我在这里找不到问题:
我使用maven插件创建了一个jar,但是狗不会打猎。
班级:
package com.foo.baitshop;
public class Design {
public static void main(String args[]) throws IOException {
int argLength = args.length;
}
}
我将jar解压缩到内部并且META-INF文件夹位于根目录中并包含清单(MANIFEST.MF)。
看起来像这样:
Manifest-Version: 1.0
Archiver-Version: Plexus Archiver
Created-By: Apache Maven
Built-By: lwhite
Build-Jdk: 9.0.4
Main-Class: com.foo.baitshop.Design;
要运行,我在持有jar的目录中执行以下命令:
java -jar baitshop2-1.0-SNAPSHOT-jar-with-dependencies.jar
此环境中没有外部设置类路径。
错误消息是:
fm-mltp140:target lwhite$ java -jar baitshop2-1.0-SNAPSHOT-jar-with-dependencies.jar
Error: Could not find or load main class com.foo.baitshop.Design;
Caused by: java.lang.ClassNotFoundException: com/foo/baitshop/Design;
非常感谢任何帮助。
答案 0 :(得分:1)
我认为它是分号:
Main-Class: com.foo.baitshop.Design;
需要将其删除为:
Main-Class: com.foo.baitshop.Design
如果Maven正在生成此内容,则需要调试Maven配置以防止添加分号。可能在某处配置中有一个分号。
来自Oracle的相关doc。