2014-02-20 114 views
0

我在问一个基本的Java问题。我需要在服务器上运行我的Java程序,所以我必须从cmmand行执行它。问题是,我得到一个Java从命令行运行:类路径包含文件夹和子文件夹

java.lang.NoClassDefFoundError: utils/Compare 

我运行在bin和../../lib/*

java -cp bin:../../lib/*:../../bin/* Test 

一切都公认所以它是确定的,但不是班英寸./../bin/有多个子文件夹。它抱怨子文件夹中的课程。事实上,如果我特别在类路径中包含该子文件夹

java -cp bin:../../lib/*:../../bin/utils/* Test 

它也行不通。所有的课程都在那里,路径是正确的。我用蚂蚁编译它,编译结束。

Ubdate:

/评价:/ bin中

/../../Evaluation:/斌/ utils的,斌/文档等

为类Compare.class这是抱怨是正确的内utils

谢谢你提前。

Altober

SOLUTION:

我错过了最后一个冒号应该

java -cp bin:../../lib/*:../../bin/: Test 
+0

我认为包含类文件的文件夹应该指定为'../../ bin/utils /'(不含通配符)。 – Katona

+0

谢谢但它仍然不起作用 – Altober

+0

检查包声明,并确保根在类路径上。如果你的类是'com.foo.bar.MyClass',而文件夹结构是'bin/com/foo/bar/MyClass.class',那么你需要在你的类路径中有bin。你能否在你的问题中提供相关信息? – Krease

回答

0

您是否尝试过使用(而不是一个冒号)分号来分隔文件夹?我从来没有见过在类路径列表中使用冒号。

+0

谢谢,你暗示我进入解决方案。这是一个冒号,但我错过了最后一个。 – Altober

相关问题