diff --git a/maven_plugin/src/main/java/io/github/chains_project/maven_lockfile/GenerateLockFileMojo.java b/maven_plugin/src/main/java/io/github/chains_project/maven_lockfile/GenerateLockFileMojo.java index 6af26107..6414eb16 100644 --- a/maven_plugin/src/main/java/io/github/chains_project/maven_lockfile/GenerateLockFileMojo.java +++ b/maven_plugin/src/main/java/io/github/chains_project/maven_lockfile/GenerateLockFileMojo.java @@ -39,6 +39,7 @@ public class GenerateLockFileMojo extends AbstractLockfileMojo { public void execute() throws MojoExecutionException { if (Boolean.parseBoolean(skip)) { getLog().info("Skipping maven-lockfile"); + return; } try { LockFile lockFileFromFile = diff --git a/maven_plugin/src/main/java/io/github/chains_project/maven_lockfile/ValidateChecksumMojo.java b/maven_plugin/src/main/java/io/github/chains_project/maven_lockfile/ValidateChecksumMojo.java index 63b8dd64..d79e4c6e 100644 --- a/maven_plugin/src/main/java/io/github/chains_project/maven_lockfile/ValidateChecksumMojo.java +++ b/maven_plugin/src/main/java/io/github/chains_project/maven_lockfile/ValidateChecksumMojo.java @@ -31,11 +31,12 @@ public class ValidateChecksumMojo extends AbstractLockfileMojo { * @throws MojoExecutionException if the lock file is invalid or could not be read. */ public void execute() throws MojoExecutionException { - getLog().info("Validating lock file ..."); if (Boolean.parseBoolean(skip)) { getLog().info("Skipping maven-lockfile"); + return; } try { + getLog().info("Validating lock file ..."); Environment environment = generateMetaInformation(); LockFile lockFileFromFile = LockFile.readLockFile(getLockFilePath(project)); diff --git a/maven_plugin/src/test/java/it/IntegrationTestsIT.java b/maven_plugin/src/test/java/it/IntegrationTestsIT.java index 87320cb8..d1bc656b 100644 --- a/maven_plugin/src/test/java/it/IntegrationTestsIT.java +++ b/maven_plugin/src/test/java/it/IntegrationTestsIT.java @@ -331,4 +331,17 @@ public void orderedLockfile(MavenExecutionResult result) throws Exception { boolean sorted = Ordering.natural().isOrdered(dependencyList); assertThat(sorted).isTrue(); } + + @MavenTest + public void skipLockfile(MavenExecutionResult result) throws Exception { + // contract: the dependency list should be ordered + assertThat(result).isSuccessful(); + var fileExists = Files.find( + result.getMavenProjectResult().getTargetBaseDirectory(), + Integer.MAX_VALUE, + (path, attr) -> path.getFileName().toString().contains("lockfile.json")) + .findAny() + .isPresent(); + assertThat(fileExists).isFalse(); + } } diff --git a/maven_plugin/src/test/resources-its/it/IntegrationTestsIT/skipLockfile/pom.xml b/maven_plugin/src/test/resources-its/it/IntegrationTestsIT/skipLockfile/pom.xml new file mode 100644 index 00000000..75f53970 --- /dev/null +++ b/maven_plugin/src/test/resources-its/it/IntegrationTestsIT/skipLockfile/pom.xml @@ -0,0 +1,52 @@ + + 4.0.0 + + com.mycompany.app + my-app + jar + 1 + + 11 + 11 + UTF-8 + + + + org.junit.jupiter + junit-jupiter-api + 5.9.2 + + + org.junit.jupiter + junit-jupiter-api + 5.9.2 + sources + + + org.junit.jupiter + junit-jupiter-api + 5.9.2 + javadoc + + + + + + io.github.chains-project + + maven-lockfile + @project.version@ + + + + generate + + + + + true + + + + + \ No newline at end of file diff --git a/maven_plugin/src/test/resources-its/it/IntegrationTestsIT/skipLockfile/src/main/java/HelloWorld.java b/maven_plugin/src/test/resources-its/it/IntegrationTestsIT/skipLockfile/src/main/java/HelloWorld.java new file mode 100644 index 00000000..fced9266 --- /dev/null +++ b/maven_plugin/src/test/resources-its/it/IntegrationTestsIT/skipLockfile/src/main/java/HelloWorld.java @@ -0,0 +1,7 @@ +package simpleProject.src.main.java; + +public class HelloWorld { + public static void main(String[] args) { + System.out.println("Hello World!"); + } +}