(我知道之前已经提出过这个问题,但是我无法用这些答案来解决这个问题)
我是java的新手,当我mvn -X -f "C:\xampp\perl\vendor\lib\Apache\apache-maven-3.5.3\bin\data-mqtt\pom.xml" clean compile exec:java
时,我试图编写一些代码来访问和使用来自https://console.thethingsnetwork.org/的数据
我明白了(来自终端的调试/错误)
java.lang.ClassNotFoundException:App 在java.net.URLClassLoader.findClass(URLClassLoader.java:466) 在java.lang.ClassLoader.loadClass(ClassLoader.java:566) at java.lang.ClassLoader.loadClass(ClassLoader.java:499) 在org.codehaus.mojo.exec.ExecJavaMojo $ 1.run(ExecJavaMojo.java:270) 在java.lang.Thread.run(Thread.java:844)[INFO] -------------------------------- ---------------------------------------- [INFO] BUILD FAILURE [INFO] -------------------------------------------------- ---------------------- [INFO]总时间:5.844秒[INFO]完成于: 2018-06-18T10:47:08 + 02:00 [INFO] -------------------------------------------------- ---------------------- [错误]无法执行目标 org.codehaus.mojo:exec-maven-plugin:1.6.0:java(default-cli)on project data-mqtt:执行Java时发生异常 类。应用 - > [帮助1] org.apache.maven.lifecycle.LifecycleExecutionException:失败 执行目标org.codehaus.mojo:exec-maven-plugin:1.6.0:java 项目数据上的(default-cli)-mqtt:发生异常时 执行Java类。应用 在org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:213) 在org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:154) 在org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:146) 在org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117) 在org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81) 在org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56) 在org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128) 在org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:305) 在org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:192) 在org.apache.maven.DefaultMaven.execute(DefaultMaven.java:105) 在org.apache.maven.cli.MavenCli.execute(MavenCli.java:956) 在org.apache.maven.cli.MavenCli.doMain(MavenCli.java:290) 在org.apache.maven.cli.MavenCli.main(MavenCli.java:194) at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在java.lang.reflect.Method.invoke(Method.java:564) 在org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:289) 在org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229) 在org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:415) 在org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)引起: org.apache.maven.plugin.MojoExecutionException:发生异常 在执行Java类时。应用 在org.codehaus.mojo.exec.ExecJavaMojo.execute(ExecJavaMojo.java:339) 在org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:137) 在org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208) 在org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:154) 在org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:146) 在org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117) 在org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81) 在org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56) 在org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128) 在org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:305) 在org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:192) 在org.apache.maven.DefaultMaven.execute(DefaultMaven.java:105) 在org.apache.maven.cli.MavenCli.execute(MavenCli.java:956) 在org.apache.maven.cli.MavenCli.doMain(MavenCli.java:290) 在org.apache.maven.cli.MavenCli.main(MavenCli.java:194) at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在java.lang.reflect.Method.invoke(Method.java:564) 在org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:289) 在org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229) 在org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:415) at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)引起:java.lang.ClassNotFoundException:App 在java.net.URLClassLoader.findClass(URLClassLoader.java:466) 在java.lang.ClassLoader.loadClass(ClassLoader.java:566) at java.lang.ClassLoader.loadClass(ClassLoader.java:499) 在org.codehaus.mojo.exec.ExecJavaMojo $ 1.run(ExecJavaMojo.java:270) 在java.lang.Thread.run(Thread.java:844)
到目前为止这是我的App.java
`
public class App {
public static Client client;
public static void main(String[] args) {
String region = "eu";
String appId = "stuf1";
String accessKey = "stuf2";
try {
client = new Client(region, appId, accessKey);
} catch (URISyntaxException var5) {
System.out.println(var5);
}
client.onError((_error) -> {
System.out.println("error: " + _error.getMessage());
});
client.onConnected((_client) -> {
System.out.println("connected !");
});
}}
和我的pom.xml
<repositories>
<repository>
<id>Codehaus Mojo</id>
<name>Codehaus Mojo</name>
<url>https://oss.sonatype.org/content/repositories/codehaus-
snapshots/</url>
</repository>
</repositories>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.6.0</version>
<configuration>
<classpathScope>test</classpathScope>
<mainClass>App</mainClass>
</configuration>
<executions>
<execution>
<id>run-App.java</id>
<phase>integration-test</phase>
<goals><goal>java</goal></goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<version>3.0.0</version>
</plugin>
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>3.0.2</version>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.7.0</version>
<configuration>
<staleMillis>1</staleMillis>
<useIncrementalCompilation>false</useIncrementalCompilation>
</configuration>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.21.0</version>
</plugin>
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<version>3.0.2</version>
</plugin>
<plugin>
<artifactId>maven-install-plugin</artifactId>
<version>2.5.2</version>
</plugin>
<plugin>
<artifactId>maven-deploy-plugin</artifactId>
<version>2.8.2</version>
</plugin>
</plugins>
</pluginManagement>
</build>
</project>
如果有人可以帮助我,如果您需要更多详细信息,请致谢。
答案 0 :(得分:0)
没有更改适当的路径
<mainClass>App</mainClass>
至<mainClass>org.thethingsnetwork.samples.mqtt.App</mainClass>