JAVA独立.jar

时间:2017-05-03 01:19:37

标签: java jar

我是java的新手,我正在尝试创建一个可以从任何目录执行的.jar。我花了很多时间在网上搜索如何做到这一点,但它只是没有下沉。无论我尝试过什么,我继续得到错误:无法找到或加载主类。我希望有人可以为我拼出它..我已经尝试过使用lib和classes文件夹(从来没有用过),但如果可能的话,只是将所有文件都放在一个目录中会很高兴。

我在d:\

的根目录下面有以下文件
  • commons-lang3-3.5.jar
  • JavaTemplate.class,JavaTemplate.java
  • MANIFEST.txt
  • 订书钉$ 1.class
  • Staples.class
  • Staples.java

javatemplate.JavaTemplate是我的主要课程:

package javatemplate;

import java.io.*;

// ====================
public class JavaTemplate {
// ====================

   // ====================
   public static void main(String[] args) {
   }
}

我的manifest.txt文件:

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 ..

1 个答案:

答案 0 :(得分:1)

jar.exe cvfm JavaTemplate.jar ./Manifest.txt ./javatemplate.JavaTemplate ./*.java ./*.class

这不包括javatemplate/JavaTemplate.class,因此它不存在于.jar文件中。

注意:

  1. 为什么要将.java文件放入.jar文件?
  2. ./Class-path条目中最多是多余的。它们是相对于.jar文件位置的相对URL。
  3. 不清楚./javatemplate.JavaTemplate应该是什么。