我一直在寻找罐子说无法找到主类的原因
项目:
4类文件
属性文件
2个图书馆(来自Maven)
清单文件:
Manifest-Version: 1.0
Main-Class: all.GuiApp
所有课程都在同一个包“all”
我在intellij工件中添加了工件 - 并指定了主类。尝试了“提取到JAR”和“复制到输出和链接”的两个选项
当我双击它时,它什么都不做 当我从命令行执行它时,它给我一条消息,说它无法找到主类。我不知道还有什么可以让它发挥作用。
编辑:
运行以下命令实际上让我更近了一步,它是否以某种方式看不到清单文件?我如何确保它在正确的位置?
java -classpath jarName.jar all.GuiApp
在此步骤之后,它告诉我它找不到我的属性文件。我甚至复制了src / main / resources文件夹结构并在那里添加了文件(以及根jar存档中,但它仍然无法加载它。
POM文件:
<?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>updateTimes</groupId>
<artifactId>update_ms</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>org.mongodb</groupId>
<artifactId>mongo-java-driver</artifactId>
<version>2.10.1</version>
</dependency>
<dependency>
<groupId>com.jcraft</groupId>
<artifactId>jsch</artifactId>
<version>0.1.53</version>
</dependency>
</dependencies>
</project>
GuiApp的主要声明:
public static void main(String[] args) {
答案 0 :(得分:0)
似乎问题是我在intellij中看到的清单文件是正确的,被maven库覆盖了。从我看到我需要为外部库创建一个jar,并分别编译我的代码。
我通过使用jch和mongo的外部jar文件纠正了这个问题(在同事的帮助下)。然后我在类路径中引用了它。由于我没有外部库,我的清单文件没有被覆盖。