diff --git a/plexus-java/pom.xml b/plexus-java/pom.xml index 23176da..fa62f27 100644 --- a/plexus-java/pom.xml +++ b/plexus-java/pom.xml @@ -30,7 +30,12 @@ org.junit.jupiter - junit-jupiter + junit-jupiter-api + test + + + org.junit.jupiter + junit-jupiter-params test @@ -45,12 +50,6 @@ 4.11.0 test - - com.google.inject - guice - 6.0.0 - test - org.assertj assertj-core @@ -69,12 +68,6 @@ org.apache.maven.plugins maven-failsafe-plugin - - - **/*Test.java - **/*IT.java - - diff --git a/plexus-java/src/main/java/org/codehaus/plexus/languages/java/jpms/AbstractBinaryModuleInfoParser.java b/plexus-java/src/main/java/org/codehaus/plexus/languages/java/jpms/AbstractBinaryModuleInfoParser.java index 81e90e9..0abd925 100644 --- a/plexus-java/src/main/java/org/codehaus/plexus/languages/java/jpms/AbstractBinaryModuleInfoParser.java +++ b/plexus-java/src/main/java/org/codehaus/plexus/languages/java/jpms/AbstractBinaryModuleInfoParser.java @@ -58,7 +58,7 @@ public JavaModuleDescriptor getModuleDescriptor(Path modulePath, JavaVersion jdk .equalsIgnoreCase( manifest.getMainAttributes().getValue("Multi-Release"))) { int javaVersion = - Integer.valueOf(jdkVersion.asMajor().getValue(1)); + Integer.parseInt(jdkVersion.asMajor().getValue(1)); for (int version = javaVersion; version >= 9; version--) { String resource = "META-INF/versions/" + version + "/module-info.class"; diff --git a/plexus-java/src/main/java/org/codehaus/plexus/languages/java/jpms/LocationManager.java b/plexus-java/src/main/java/org/codehaus/plexus/languages/java/jpms/LocationManager.java index 8b8b72b..2c866cf 100644 --- a/plexus-java/src/main/java/org/codehaus/plexus/languages/java/jpms/LocationManager.java +++ b/plexus-java/src/main/java/org/codehaus/plexus/languages/java/jpms/LocationManager.java @@ -162,16 +162,13 @@ public ResolvePathsResult resolvePaths(final ResolvePathsRequest reque JavaModuleDescriptor moduleDescriptor; ModuleNameSource source; - ModuleNameExtractor nameExtractor = new ModuleNameExtractor() { - @Override - public String extract(Path path) throws IOException { - if (request.getJdkHome() != null) { - filenameAutoModules.put(t, path); - } else { - return CmdModuleNameExtractor.getModuleName(path); - } - return null; + ModuleNameExtractor nameExtractor = path -> { + if (request.getJdkHome() != null) { + filenameAutoModules.put(t, path); + } else { + return CmdModuleNameExtractor.getModuleName(path); } + return null; }; try { @@ -323,7 +320,7 @@ private ResolvePathResult resolvePath( // either jar or outputDirectory if (Files.isRegularFile(path) && !path.getFileName().toString().endsWith(".jar")) { throw new IllegalArgumentException( - "'" + path.toString() + "' not allowed on the path, only outputDirectories and jars are accepted"); + "'" + path + "' not allowed on the path, only outputDirectories and jars are accepted"); } if (Files.isRegularFile(path) || Files.exists(path.resolve("module-info.class"))) { @@ -428,13 +425,8 @@ private void collectProviders(JavaModuleDescriptor moduleDescriptor, Map providingModules = availableProviders.get(serviceClassName); + Set providingModules = availableProviders.computeIfAbsent(serviceClassName, k -> new HashSet<>()); - if (providingModules == null) { - providingModules = new HashSet<>(); - - availableProviders.put(serviceClassName, providingModules); - } providingModules.add(moduleDescriptor.name()); } } diff --git a/plexus-java/src/main/java/org/codehaus/plexus/languages/java/jpms/ManifestModuleNameExtractor.java b/plexus-java/src/main/java/org/codehaus/plexus/languages/java/jpms/ManifestModuleNameExtractor.java index 6c6d502..4c1fc90 100644 --- a/plexus-java/src/main/java/org/codehaus/plexus/languages/java/jpms/ManifestModuleNameExtractor.java +++ b/plexus-java/src/main/java/org/codehaus/plexus/languages/java/jpms/ManifestModuleNameExtractor.java @@ -19,10 +19,9 @@ * under the License. */ -import java.io.File; -import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; +import java.nio.file.Files; import java.nio.file.Path; import java.util.jar.JarFile; import java.util.jar.Manifest; @@ -36,7 +35,7 @@ class ManifestModuleNameExtractor implements ModuleNameExtractor { @Override public String extract(Path file) throws IOException { - Manifest manifest = extractManifest(file.toFile()); + Manifest manifest = extractManifest(file); String automaticModuleName; if (manifest != null) { @@ -48,14 +47,14 @@ public String extract(Path file) throws IOException { return automaticModuleName; } - private Manifest extractManifest(File file) throws IOException { + private Manifest extractManifest(Path file) throws IOException { Manifest manifest; - if (file.isFile()) { - try (JarFile jarFile = new JarFile(file)) { + if (Files.isRegularFile(file)) { + try (JarFile jarFile = new JarFile(file.toFile())) { manifest = jarFile.getManifest(); } - } else if (new File(file, "META-INF/MANIFEST.MF").exists()) { - try (InputStream is = new FileInputStream(new File(file, "META-INF/MANIFEST.MF"))) { + } else if (Files.exists(file.resolve("META-INF/MANIFEST.MF"))) { + try (InputStream is = Files.newInputStream(file.resolve("META-INF/MANIFEST.MF"))) { manifest = new Manifest(is); } } else { diff --git a/plexus-java/src/main/java9/module-info.java b/plexus-java/src/main/java9/module-info.java index 9b83831..c09093b 100644 --- a/plexus-java/src/main/java9/module-info.java +++ b/plexus-java/src/main/java9/module-info.java @@ -16,13 +16,13 @@ * specific language governing permissions and limitations * under the License. */ -module org.codehaus.plexus.languages.java -{ +module org.codehaus.plexus.languages.java { requires com.thoughtworks.qdox; requires org.objectweb.asm; - + exports org.codehaus.plexus.languages.java.jpms; exports org.codehaus.plexus.languages.java.version; - - provides org.codehaus.plexus.languages.java.jpms.LocationManager with org.codehaus.plexus.languages.java.jpms.LocationManager; -} \ No newline at end of file + + provides org.codehaus.plexus.languages.java.jpms.LocationManager with + org.codehaus.plexus.languages.java.jpms.LocationManager; +} diff --git a/plexus-java/src/main/java9/org/codehaus/plexus/languages/java/jpms/BinaryModuleInfoParser.java b/plexus-java/src/main/java9/org/codehaus/plexus/languages/java/jpms/BinaryModuleInfoParser.java index 6bab93e..a2f3af1 100644 --- a/plexus-java/src/main/java9/org/codehaus/plexus/languages/java/jpms/BinaryModuleInfoParser.java +++ b/plexus-java/src/main/java9/org/codehaus/plexus/languages/java/jpms/BinaryModuleInfoParser.java @@ -21,68 +21,55 @@ import java.io.IOException; import java.io.InputStream; - import java.lang.module.ModuleDescriptor; -import java.util.Collections; import java.util.LinkedHashSet; import java.util.Set; import org.codehaus.plexus.languages.java.jpms.JavaModuleDescriptor.Builder; -class BinaryModuleInfoParser extends AbstractBinaryModuleInfoParser -{ +class BinaryModuleInfoParser extends AbstractBinaryModuleInfoParser { @Override - JavaModuleDescriptor parse( InputStream in ) throws IOException - { - ModuleDescriptor descriptor = ModuleDescriptor.read( in ); - - Builder builder = JavaModuleDescriptor.newModule( descriptor.name() ); - - for ( ModuleDescriptor.Requires requires : descriptor.requires() ) - { - if ( requires.modifiers().contains( ModuleDescriptor.Requires.Modifier.STATIC ) - || requires.modifiers().contains( ModuleDescriptor.Requires.Modifier.TRANSITIVE ) ) - { + JavaModuleDescriptor parse(InputStream in) throws IOException { + ModuleDescriptor descriptor = ModuleDescriptor.read(in); + + Builder builder = JavaModuleDescriptor.newModule(descriptor.name()); + + for (ModuleDescriptor.Requires requires : descriptor.requires()) { + if (requires.modifiers().contains(ModuleDescriptor.Requires.Modifier.STATIC) + || requires.modifiers().contains(ModuleDescriptor.Requires.Modifier.TRANSITIVE)) { Set modifiers = new LinkedHashSet<>(); - if ( requires.modifiers().contains( ModuleDescriptor.Requires.Modifier.STATIC ) ) - { - modifiers.add( org.codehaus.plexus.languages.java.jpms.JavaModuleDescriptor.JavaRequires.JavaModifier.STATIC ); + if (requires.modifiers().contains(ModuleDescriptor.Requires.Modifier.STATIC)) { + modifiers.add( + org.codehaus.plexus.languages.java.jpms.JavaModuleDescriptor.JavaRequires.JavaModifier + .STATIC); } - if ( requires.modifiers().contains( ModuleDescriptor.Requires.Modifier.TRANSITIVE ) ) - { - modifiers.add( org.codehaus.plexus.languages.java.jpms.JavaModuleDescriptor.JavaRequires.JavaModifier.TRANSITIVE ); + if (requires.modifiers().contains(ModuleDescriptor.Requires.Modifier.TRANSITIVE)) { + modifiers.add( + org.codehaus.plexus.languages.java.jpms.JavaModuleDescriptor.JavaRequires.JavaModifier + .TRANSITIVE); } - builder.requires( modifiers, requires.name() ); - } - else - { - builder.requires( requires.name() ); + builder.requires(modifiers, requires.name()); + } else { + builder.requires(requires.name()); } } - - for ( ModuleDescriptor.Exports exports : descriptor.exports() ) - { - if ( exports.targets().isEmpty() ) - { - builder.exports( exports.source() ); - } - else - { - builder.exports( exports.source(), exports.targets() ); + + for (ModuleDescriptor.Exports exports : descriptor.exports()) { + if (exports.targets().isEmpty()) { + builder.exports(exports.source()); + } else { + builder.exports(exports.source(), exports.targets()); } } - - for ( String uses : descriptor.uses() ) - { - builder.uses( uses ); + + for (String uses : descriptor.uses()) { + builder.uses(uses); } - - for ( ModuleDescriptor.Provides provides : descriptor.provides() ) - { - builder.provides( provides.service(), provides.providers() ); + + for (ModuleDescriptor.Provides provides : descriptor.provides()) { + builder.provides(provides.service(), provides.providers()); } - - + return builder.build(); } } diff --git a/plexus-java/src/main/java9/org/codehaus/plexus/languages/java/jpms/CmdModuleNameExtractor.java b/plexus-java/src/main/java9/org/codehaus/plexus/languages/java/jpms/CmdModuleNameExtractor.java index 2c7a090..5f684a4 100644 --- a/plexus-java/src/main/java9/org/codehaus/plexus/languages/java/jpms/CmdModuleNameExtractor.java +++ b/plexus-java/src/main/java9/org/codehaus/plexus/languages/java/jpms/CmdModuleNameExtractor.java @@ -41,54 +41,43 @@ *

* The result is a properties-file written ot the StdOut, having the jar path as key and the module name as value.
* Any exception is written to the StdErr. - *

- * + *

+ * * @author Robert Scholte * @since 1.0.0 */ -public class CmdModuleNameExtractor -{ - public static void main( String[] args ) - { +public class CmdModuleNameExtractor { + public static void main(String[] args) { Properties properties = new Properties(); - for ( String path : args ) - { - try - { - String moduleName = getModuleName( Paths.get( path ) ); - if ( moduleName != null ) - { - properties.setProperty( path, moduleName ); + for (String path : args) { + try { + String moduleName = getModuleName(Paths.get(path)); + if (moduleName != null) { + properties.setProperty(path, moduleName); } - } - catch ( Exception e ) - { - System.err.append( e.getMessage() ); + } catch (Exception e) { + System.err.append(e.getMessage()); } } - try - { - properties.store( System.out, "" ); - } - catch ( IOException e ) - { - System.exit( 1 ); + try { + properties.store(System.out, ""); + } catch (IOException e) { + System.exit(1); } } /** * Get the name of the module, using Java 9 code without reflection - * + * * @param modulePath the module path * @return the module name * @throws FindException If an error occurs finding the module */ - public static String getModuleName( Path modulePath ) throws FindException - { - Set moduleReferences = ModuleFinder.of( modulePath ).findAll(); - + public static String getModuleName(Path modulePath) throws FindException { + Set moduleReferences = ModuleFinder.of(modulePath).findAll(); + Optional modRef = moduleReferences.stream().findFirst(); return modRef.isPresent() ? modRef.get().descriptor().name() : null; diff --git a/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/CmdModuleNameExtractorTest.java b/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/CmdModuleNameExtractorTest.java index 6527f47..8430cbf 100644 --- a/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/CmdModuleNameExtractorTest.java +++ b/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/CmdModuleNameExtractorTest.java @@ -29,7 +29,7 @@ class CmdModuleNameExtractorTest { @Test void testMethodCount() throws Exception { // ensure that both implementations are in sync - assertThat(CmdModuleNameExtractor.class.getDeclaredMethods().length).isEqualTo(2); + assertThat(CmdModuleNameExtractor.class.getDeclaredMethods()).hasSize(2); // if these don't exist, a NoSuchMethodException is thrown CmdModuleNameExtractor.class.getDeclaredMethod("main", String[].class); diff --git a/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/LocationManagerIT.java b/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/LocationManagerIT.java index 70c3a7f..a33c7ce 100644 --- a/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/LocationManagerIT.java +++ b/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/LocationManagerIT.java @@ -21,7 +21,6 @@ import java.nio.file.Path; import java.nio.file.Paths; -import java.util.Arrays; import java.util.Collections; import org.junit.jupiter.api.BeforeEach; @@ -77,10 +76,10 @@ void testManifestWithoutReflectRequires() throws Exception { ResolvePathsResult result = locationManager.resolvePaths(request); - assertThat(result.getPathExceptions()).hasSize(0); + assertThat(result.getPathExceptions()).isEmpty(); assertThat(result.getMainModuleDescriptor()).isEqualTo(descriptor); assertThat(result.getPathElements()).hasSize(1); - assertThat(result.getModulepathElements()).hasSize(0); + assertThat(result.getModulepathElements()).isEmpty(); assertThat(result.getClasspathElements()).hasSize(1); } @@ -116,7 +115,7 @@ void testResolvePathWithException() { void testClassicJarNameStartsWithNumber() throws Exception { Path p = Paths.get("src/test/test-data/jar.empty.invalid.name/101-1.0.0-SNAPSHOT.jar"); ResolvePathsRequest request = - ResolvePathsRequest.ofPaths(Arrays.asList(p)).setMainModuleDescriptor(mockModuleInfoJava); + ResolvePathsRequest.ofPaths(Collections.singletonList(p)).setMainModuleDescriptor(mockModuleInfoJava); ResolvePathsResult result = locationManager.resolvePaths(request); diff --git a/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/LocationManagerTest.java b/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/LocationManagerTest.java index 274d115..2b8cb04 100644 --- a/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/LocationManagerTest.java +++ b/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/LocationManagerTest.java @@ -61,10 +61,10 @@ void testNoPaths() throws Exception { ResolvePathsResult result = locationManager.resolvePaths(ResolvePathsRequest.ofFiles(Collections.emptyList())); assertThat(result.getMainModuleDescriptor()).isNull(); - assertThat(result.getPathElements()).hasSize(0); - assertThat(result.getModulepathElements()).hasSize(0); - assertThat(result.getClasspathElements()).hasSize(0); - assertThat(result.getPathExceptions()).hasSize(0); + assertThat(result.getPathElements()).isEmpty(); + assertThat(result.getModulepathElements()).isEmpty(); + assertThat(result.getClasspathElements()).isEmpty(); + assertThat(result.getPathExceptions()).isEmpty(); } @Test @@ -80,10 +80,10 @@ void testWithUnknownRequires() throws Exception { ResolvePathsResult result = locationManager.resolvePaths(request); assertThat(result.getMainModuleDescriptor()).isEqualTo(descriptor); - assertThat(result.getPathElements()).hasSize(0); - assertThat(result.getModulepathElements()).hasSize(0); - assertThat(result.getClasspathElements()).hasSize(0); - assertThat(result.getPathExceptions()).hasSize(0); + assertThat(result.getPathElements()).isEmpty(); + assertThat(result.getModulepathElements()).isEmpty(); + assertThat(result.getClasspathElements()).isEmpty(); + assertThat(result.getPathExceptions()).isEmpty(); } @Test @@ -102,8 +102,8 @@ void testManifestWithReflectRequires() throws Exception { assertThat(result.getPathElements()).hasSize(1); assertThat(result.getModulepathElements()).hasSize(1); assertThat(result.getModulepathElements().get(abc)).isEqualTo(ModuleNameSource.MANIFEST); - assertThat(result.getClasspathElements()).hasSize(0); - assertThat(result.getPathExceptions()).hasSize(0); + assertThat(result.getClasspathElements()).isEmpty(); + assertThat(result.getPathExceptions()).isEmpty(); } @Test @@ -125,8 +125,8 @@ void testDirDescriptorWithReflectRequires() throws Exception { assertThat(result.getPathElements()).hasSize(1); assertThat(result.getModulepathElements()).hasSize(1); assertThat(result.getModulepathElements().get(abc)).isEqualTo(ModuleNameSource.MODULEDESCRIPTOR); - assertThat(result.getClasspathElements()).hasSize(0); - assertThat(result.getPathExceptions()).hasSize(0); + assertThat(result.getClasspathElements()).isEmpty(); + assertThat(result.getPathExceptions()).isEmpty(); } @Test @@ -147,8 +147,8 @@ void testJarWithAsmRequires() throws Exception { assertThat(result.getPathElements()).hasSize(1); assertThat(result.getModulepathElements()).hasSize(1); assertThat(result.getModulepathElements().get(abc)).isEqualTo(ModuleNameSource.MODULEDESCRIPTOR); - assertThat(result.getClasspathElements()).hasSize(0); - assertThat(result.getPathExceptions()).hasSize(0); + assertThat(result.getClasspathElements()).isEmpty(); + assertThat(result.getPathExceptions()).isEmpty(); } @Test @@ -271,8 +271,8 @@ void testAdditionalModules() throws Exception { assertThat(result.getMainModuleDescriptor()).isEqualTo(descriptor); assertThat(result.getPathElements()).hasSize(1); assertThat(result.getModulepathElements()).hasSize(1); - assertThat(result.getClasspathElements()).hasSize(0); - assertThat(result.getPathExceptions()).hasSize(0); + assertThat(result.getClasspathElements()).isEmpty(); + assertThat(result.getPathExceptions()).isEmpty(); } @Test @@ -306,9 +306,9 @@ void testNoMatchingProviders() throws Exception { ResolvePathsResult result = locationManager.resolvePaths(request); assertThat(result.getPathElements()).hasSize(1); - assertThat(result.getModulepathElements()).hasSize(0); + assertThat(result.getModulepathElements()).isEmpty(); assertThat(result.getClasspathElements()).hasSize(1); - assertThat(result.getPathExceptions()).hasSize(0); + assertThat(result.getPathExceptions()).isEmpty(); } @Test @@ -328,8 +328,8 @@ void testMainModuleDescriptorWithProviders() throws Exception { ResolvePathsResult result = locationManager.resolvePaths(request); assertThat(result.getPathElements()).hasSize(1); assertThat(result.getModulepathElements()).hasSize(1); - assertThat(result.getClasspathElements()).hasSize(0); - assertThat(result.getPathExceptions()).hasSize(0); + assertThat(result.getClasspathElements()).isEmpty(); + assertThat(result.getPathExceptions()).isEmpty(); } @Test @@ -347,9 +347,9 @@ void testMainModuleDescriptorWithProvidersDontIncludeProviders() throws Exceptio ResolvePathsResult result = locationManager.resolvePaths(request); assertThat(result.getPathElements()).hasSize(1); - assertThat(result.getModulepathElements()).hasSize(0); + assertThat(result.getModulepathElements()).isEmpty(); assertThat(result.getClasspathElements()).hasSize(1); - assertThat(result.getPathExceptions()).hasSize(0); + assertThat(result.getPathExceptions()).isEmpty(); } @Test @@ -374,8 +374,8 @@ void testTransitiveProviders() throws Exception { ResolvePathsResult result = locationManager.resolvePaths(request); assertThat(result.getPathElements()).hasSize(2); assertThat(result.getModulepathElements()).hasSize(2); - assertThat(result.getClasspathElements()).hasSize(0); - assertThat(result.getPathExceptions()).hasSize(0); + assertThat(result.getClasspathElements()).isEmpty(); + assertThat(result.getPathExceptions()).isEmpty(); } @Test @@ -400,7 +400,7 @@ void testDontIncludeProviders() throws Exception { assertThat(result.getPathElements()).hasSize(2); assertThat(result.getModulepathElements()).hasSize(1); assertThat(result.getClasspathElements()).hasSize(1); - assertThat(result.getPathExceptions()).hasSize(0); + assertThat(result.getPathExceptions()).isEmpty(); } @Test @@ -419,7 +419,7 @@ void testAllowAdditionalModulesWithoutMainDescriptor() throws Exception { assertThat(result.getPathElements()).hasSize(2); assertThat(result.getModulepathElements()).hasSize(1); assertThat(result.getClasspathElements()).hasSize(1); - assertThat(result.getPathExceptions()).hasSize(0); + assertThat(result.getPathExceptions()).isEmpty(); } @Test @@ -482,7 +482,7 @@ void testTransitiveStatic() throws Exception { assertThat(result.getPathElements()).hasSize(2); assertThat(result.getModulepathElements()).hasSize(1); assertThat(result.getClasspathElements()).hasSize(1); - assertThat(result.getPathExceptions()).hasSize(0); + assertThat(result.getPathExceptions()).isEmpty(); } @Test @@ -513,7 +513,7 @@ void testDirectStatic() throws Exception { assertThat(result.getPathElements()).hasSize(3); assertThat(result.getModulepathElements()).containsOnlyKeys(moduleB, moduleD); assertThat(result.getClasspathElements()).containsOnly(moduleC); - assertThat(result.getPathExceptions()).hasSize(0); + assertThat(result.getPathExceptions()).isEmpty(); } @Test @@ -537,7 +537,7 @@ void testDuplicateModule() throws Exception { ResolvePathsResult result = locationManager.resolvePaths(request); assertThat(result.getPathElements()).hasSize(2); assertThat(result.getModulepathElements()).containsOnlyKeys(moduleB); - assertThat(result.getClasspathElements()).hasSize(0); + assertThat(result.getClasspathElements()).isEmpty(); assertThat(result.getPathExceptions()).hasSize(1); // duplicate (module B / module C) is flagged as an error assertThat(result.getPathExceptions()).containsOnlyKeys(moduleC); @@ -565,7 +565,7 @@ void testStaticTransitive() throws Exception { .build()); when(asmParser.getModuleDescriptor(moduleC)) .thenReturn(JavaModuleDescriptor.newModule("moduleC") - .requires(new HashSet<>(Arrays.asList(JavaModifier.STATIC)), "moduleD") + .requires(new HashSet<>(Collections.singletonList(JavaModifier.STATIC)), "moduleD") .build()); when(asmParser.getModuleDescriptor(moduleD)) .thenReturn(JavaModuleDescriptor.newModule("moduleD").build()); @@ -574,7 +574,7 @@ void testStaticTransitive() throws Exception { assertThat(result.getPathElements()).hasSize(3); assertThat(result.getModulepathElements()).containsOnlyKeys(moduleB, moduleC); assertThat(result.getClasspathElements()).containsOnly(moduleD); - assertThat(result.getPathExceptions()).hasSize(0); + assertThat(result.getPathExceptions()).isEmpty(); } /** diff --git a/plexus-java/src/test/java/org/codehaus/plexus/languages/java/version/JavaClassVersionTest.java b/plexus-java/src/test/java/org/codehaus/plexus/languages/java/version/JavaClassVersionTest.java index 59b979a..c29b50a 100644 --- a/plexus-java/src/test/java/org/codehaus/plexus/languages/java/version/JavaClassVersionTest.java +++ b/plexus-java/src/test/java/org/codehaus/plexus/languages/java/version/JavaClassVersionTest.java @@ -26,7 +26,7 @@ class JavaClassVersionTest { @MethodSource("provideClassFiles") void testFilesClassVersions(Path filePath) { String fileName = filePath.getFileName().toString(); - int javaVersion = Integer.valueOf(fileName.substring(fileName.indexOf("-") + 1, fileName.length() - 6)); + int javaVersion = Integer.parseInt(fileName.substring(fileName.indexOf("-") + 1, fileName.length() - 6)); JavaClassfileVersion classVersion = JavaClassfileVersion.of(filePath); assertEquals(javaVersion + 44, classVersion.majorVersion()); assertEquals(0, classVersion.minorVersion()); diff --git a/plexus-java/src/test/java/org/codehaus/plexus/languages/java/version/JavaVersionTest.java b/plexus-java/src/test/java/org/codehaus/plexus/languages/java/version/JavaVersionTest.java index de1db99..39b4381 100644 --- a/plexus-java/src/test/java/org/codehaus/plexus/languages/java/version/JavaVersionTest.java +++ b/plexus-java/src/test/java/org/codehaus/plexus/languages/java/version/JavaVersionTest.java @@ -34,19 +34,19 @@ class JavaVersionTest { @Test void testParse() { assertThat(JavaVersion.parse("1.4").compareTo(JavaVersion.parse("1.4.2"))) - .isLessThan(0); - assertThat(JavaVersion.parse("1.4").compareTo(JavaVersion.parse("1.5"))).isLessThan(0); - assertThat(JavaVersion.parse("1.8").compareTo(JavaVersion.parse("9"))).isLessThan(0); + .isNegative(); + assertThat(JavaVersion.parse("1.4").compareTo(JavaVersion.parse("1.5"))).isNegative(); + assertThat(JavaVersion.parse("1.8").compareTo(JavaVersion.parse("9"))).isNegative(); - assertThat(JavaVersion.parse("1.4").compareTo(JavaVersion.parse("1.4"))).isEqualTo(0); + assertThat(JavaVersion.parse("1.4").compareTo(JavaVersion.parse("1.4"))).isZero(); assertThat(JavaVersion.parse("1.4.2").compareTo(JavaVersion.parse("1.4.2"))) - .isEqualTo(0); - assertThat(JavaVersion.parse("9").compareTo(JavaVersion.parse("9"))).isEqualTo(0); + .isZero(); + assertThat(JavaVersion.parse("9").compareTo(JavaVersion.parse("9"))).isZero(); assertThat(JavaVersion.parse("1.4.2").compareTo(JavaVersion.parse("1.4"))) - .isGreaterThan(0); - assertThat(JavaVersion.parse("1.5").compareTo(JavaVersion.parse("1.4"))).isGreaterThan(0); - assertThat(JavaVersion.parse("9").compareTo(JavaVersion.parse("1.8"))).isGreaterThan(0); + .isPositive(); + assertThat(JavaVersion.parse("1.5").compareTo(JavaVersion.parse("1.4"))).isPositive(); + assertThat(JavaVersion.parse("9").compareTo(JavaVersion.parse("1.8"))).isPositive(); } @Test @@ -56,31 +56,31 @@ void testVersionNamingExamples() { // Source: http://www.oracle.com/technetwork/java/javase/versioning-naming-139433.html assertThat(JavaVersion.parse("1.3.0").compareTo(JavaVersion.parse("1.3.0_01"))) - .isLessThan(0); + .isNegative(); assertThat(JavaVersion.parse("1.3.0_01").compareTo(JavaVersion.parse("1.3.1"))) - .isLessThan(0); + .isNegative(); assertThat(JavaVersion.parse("1.3.1").compareTo(JavaVersion.parse("1.3.1_01"))) - .isLessThan(0); + .isNegative(); assertThat(JavaVersion.parse("1.3.0").compareTo(JavaVersion.parse("1.3.0-b24"))) - .isLessThan(0); + .isNegative(); } @Test void testJEP223Short() { // http://openjdk.java.net/jeps/223 - assertThat(JavaVersion.parse("9-ea").compareTo(JavaVersion.parse("9"))).isLessThan(0); - assertThat(JavaVersion.parse("9").compareTo(JavaVersion.parse("9.0.1"))).isLessThan(0); + assertThat(JavaVersion.parse("9-ea").compareTo(JavaVersion.parse("9"))).isNegative(); + assertThat(JavaVersion.parse("9").compareTo(JavaVersion.parse("9.0.1"))).isNegative(); assertThat(JavaVersion.parse("9.0.1").compareTo(JavaVersion.parse("9.0.2"))) - .isLessThan(0); + .isNegative(); assertThat(JavaVersion.parse("9.0.2").compareTo(JavaVersion.parse("9.1.2"))) - .isLessThan(0); + .isNegative(); assertThat(JavaVersion.parse("9.1.2").compareTo(JavaVersion.parse("9.1.3"))) - .isLessThan(0); + .isNegative(); assertThat(JavaVersion.parse("9.1.3").compareTo(JavaVersion.parse("9.1.4"))) - .isLessThan(0); + .isNegative(); assertThat(JavaVersion.parse("9.1.4").compareTo(JavaVersion.parse("9.2.4"))) - .isLessThan(0); + .isNegative(); } @Test diff --git a/pom.xml b/pom.xml index 7badab1..0198bb8 100644 --- a/pom.xml +++ b/pom.xml @@ -55,6 +55,20 @@ true
+ + com.diffplug.spotless + spotless-maven-plugin + ${spotless-maven-plugin.version} + + + + src/main/java/**/*.java + src/main/java9/**/*.java + src/test/java/**/*.java + + + +