我是java的新手,我正在尝试创建一个可以从任何目录执行的.jar。我花了很多时间在网上搜索如何做到这一点,但它只是没有下沉。无论我尝试过什么,我继续得到错误:无法找到或加载主类。我希望有人可以为我拼出它..我已经尝试过使用lib和classes文件夹(从来没有用过),但如果可能的话,只是将所有文件都放在一个目录中会很高兴。
我在d:\
的根目录下面有以下文件javatemplate.JavaTemplate
是我的主要课程:package javatemplate;
import java.io.*;
// ====================
public class JavaTemplate {
// ====================
// ====================
public static void main(String[] args) {
}
}
Manifest-Version: 1.0
Ant-Version: Apache Ant 1.9.7
Created-By: 1.8.0_111-b14 (Oracle Corporation)
Class-Path: ./commons-lang3-3.5.jar
X-COMMENT: Main-Class will be added automatically by build
Main-Class: javatemplate.JavaTemplate
在d:的命令提示符下输入"C:\Program Files"\Java\jdk1.8.0_111\bin\jar.exe cvfm JavaTemplate.jar ./Manifest.txt ./javatemplate.JavaTemplate ./*.java ./*.class
编译没有错误
运行java -jar JavaTemplate.jar
会导致
错误:无法找到或加载主类
有人可以告诉我我做错了吗?
谢谢你,RIck ..
答案 0 :(得分:1)
jar.exe cvfm JavaTemplate.jar ./Manifest.txt ./javatemplate.JavaTemplate ./*.java ./*.class
这不包括javatemplate/JavaTemplate.class
,因此它不存在于.jar文件中。
注意:
./
在Class-path
条目中最多是多余的。它们是相对于.jar文件位置的相对URL。不清楚./javatemplate.JavaTemplate
应该是什么。