Looking to run a basic console app with maven
:
nicholas@mordor:~/NetBeansProjects/mavenchimp$
nicholas@mordor:~/NetBeansProjects/mavenchimp$ mvn clean exec:java
[INFO] Scanning for projects...
[INFO]
[INFO] -----------------< tech.saundersconsulting:mavenchimp >-----------------
[INFO] Building mavenchimp 1.0-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ mavenchimp ---
[INFO]
[INFO] --- exec-maven-plugin:3.0.0:java (default-cli) @ mavenchimp ---
[WARNING]
java.lang.ClassNotFoundException: tech.mavenchimp.App
at java.net.URLClassLoader.findClass (URLClassLoader.java:471)
at java.lang.ClassLoader.loadClass (ClassLoader.java:589)
at java.lang.ClassLoader.loadClass (ClassLoader.java:522)
at org.codehaus.mojo.exec.ExecJavaMojo$1.run (ExecJavaMojo.java:246)
at java.lang.Thread.run (Thread.java:834)
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1.465 s
[INFO] Finished at: 2020-12-06T08:06:26-08:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.codehaus.mojo:exec-maven-plugin:3.0.0:java (default-cli) on project mavenchimp: An exception occured while executing the Java class. tech.mavenchimp.App -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
directory tree
nicholas@mordor:~/NetBeansProjects/mavenchimp$ tree
.
├── pom.xml
└── src
├── main
│ └── java
│ └── tech
│ └── mavenchimp
│ ├── App.java
│ └── Chimp.java
└── test
└── java
7 directories, 3 files
the pom
nicholas@mordor:~/NetBeansProjects/mavenchimp$ cat pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>tech.saundersconsulting</groupId>
<artifactId>mavenchimp</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
<exec.mainClass>tech.mavenchimp.App</exec.mainClass>
</properties>
</project>
the code
nicholas@mordor:~/NetBeansProjects/mavenchimp$ cat src/main/java/tech/mavenchimp/App.java
package tech.mavenchimp;
import java.util.logging.Logger;
public class App {
private static final Logger log = Logger.getLogger(App.class.getName());
private void runApp() {
log.info("running..");
Chimp chimp = new Chimp();
chimp.connect();
}
public static void main(String[] args) {
new App().runApp();
}
}
nicholas@mordor:~/NetBeansProjects/mavenchimp$
where the pom.xml
was generated by Netbeans
and I simply added the line:
<exec.mainClass>tech.mavenchimp.App</exec.mainClass>
in order to be able to run the exec
command with maven
.
Running maven
with the -e
swith gives:
Caused by: java.lang.ClassNotFoundException: tech.mavenchimp.App
how is that class specified beyond the setting in the pom.xml
as above?