Java清单文件中的类路径无法正确读取

时间:2015-09-15 10:26:19

标签: java classpath manifest relative

我正在尝试运行一个jar文件,该文件引用了我正在捆绑的一些外部JAR文件。我无法将任何依赖项工具下载到系统中,因此我尝试使用清单文件来执行此操作。

我正在运行的jar被称为attachmentUploader.jar,并且在同一目录中是一个包含外部jar文件的libraries文件夹。

这是我的MANIFEST.txt文件:

Manifest-Version: 1.0
Created-By: 1.6.0 (Sun Microsystems Inc.)
Main-Class: com.custom.test.postClient
Class-Path: attachmentLoader.jar libraries/java-json.jar libraries/org.apache.commons.httpclient_3.1.0.v20100508.jar libraries/org.apache.commons.logging_1.0.4.v3920100508.jar

然后我使用以下命令行运行:

java -jar "C:/Users/My Documents/attachmentUploader.jar"

但收到以下错误:

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/httpclient/methods/RequestEntity 
Caused by: java.lang.ClassNotFoundException: org.apache.commons.httpclient.methods.RequestEntity
    at ......

Could not find the main class: com.tririga.custom.test.Tririga_postClient. Program will exit

那里也有一个堆栈跟踪,但不幸的是我无法复制 - 如果这对于解决问题是绝对必要的,我会费力地输入它!

错误消息对我来说似乎很奇怪,因为似乎有两个错误 - 无法在httpclient jar中找到一个类而无法找到主类。我已经检查了,这些都在我所说的位置。

我错过了一些简单的事吗?相对路径是否正确?

由于

2 个答案:

答案 0 :(得分:0)

你试过这个:

var i = 0;
var el = element.all(by.css('ul li a'));
var tableItems = [];
(function loop() {
    el.get(i).getText().then(function(text){
        if(text){
            tableItems.push(el.get(i));
            i+=1;
            loop();
        }
    });
}());

答案 1 :(得分:0)

在自己的类路径中指定attachmentloader.jar是没有意义的。

相关问题