我正在使用 Java Maven 程序,但我不知道输入什么作为 <mainClass>
.我尝试了各种基于 numerous 的东西stackoverflow questions ,但他们没有解决错误。
每次都说:
Maven Error: Could not find or load main class ...
我在我的pom.xml
里写了这个(减去 ???
)
<build>
...
<plugins>
...
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.5.3</version>
<configuration>
<descriptors>
<descriptor>src/main/assembly/jar-with-dependencies.xml</descriptor>
</descriptors>
<archive>
<manifest>
<mainClass> ??? </mainClass>
</manifest>
</archive>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
...
</plugins>
...
</build>
如何修复这些错误?
最佳答案
我在使用 Maven 时遇到了这个错误,我找到了解决方案。
Error: Could not find or load main class com.mycompany.testapifactory.Main
我在 Linux 上使用 java JDK 1.7 版,我的 pom.xml
文件是 Netbeans 生成的默认文件,我正在使用这些命令进行编译,这在普通的 hello- 下工作正常世界java应用程序:
mvn clean compile
java -jar target/TestAPIFactory-1.0-SNAPSHOT.jar com.mycompany.testapifactory.Main
发生了什么:
原来我的问题是我的 Main 方法正在扩展 Exotic 的东西,如下所示:
public class Main extends SomeExoticLibraryClass{
public static void main(String[] args){
//...
}
}
正是这种对主类的扩展导致了上述错误。
TLDR 解决方案:
确保您的主类(class)没有扩展任何第 3 方类(class)。将它们重构到自己的类中。该错误消息很糟糕,需要消除过程才能找出要做什么。
关于java - Maven 错误 : Could not find or load main class,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29366373/