我在 MainJPrint.java 文件中创建了以下类
import com.XXXXX.pdfPrint.PDFPrint;
public class MainJPrint
{
public static void main(String[] args)
{
//System.out.println("Hello World!");
print(".....");
}
public static String print (final String url)
{
Object rc = AccessController.doPrivileged(new java.security.PrivilegedAction()
{
public Object run()
{
...
}
}
}
}
在同一个文件夹中,我有一个 jar 存档jPrint.jar 我使用以下命令编译该类
>javac -classpath jPrint.jar MainJPrint.java
当我尝试执行生成的类文件时,出现此错误:
>java MainJPrint
java.lang.NoClassDefFoundError: com/XXXXX/pdfPrint/PDFPrint
如果我取消注释 Hello World 行并注释下一行,程序运行良好。
我正在使用安装在C:\j2sdk1.4.2
. 我也安装了其他 java 版本(在 C:\Program Files\Java: jre 1.6.0_01、jre 1.6.0_02、j2re1.4.2、jre6、jre7、jdk1.7.0_03)
PATH 变量包含C:\j2sdk1.4.2\bin
路径,但是我认为 java.exe 是从较高版本加载的,但这没关系,我可以这样称呼它
>C:\j2sdk1.4.2\bin\java.exe MainJPrint
jPrint.jar 是第三方存档,我需要创建一个公开方法的小程序,以便我可以使用 javascript 调用它。我不是Java开发人员,我遇到了一些小麻烦,而且我真的走到了尽头。
我尝试了其他选项,例如:
>java MainJPrint -cp .
>java MainJPrint -cp jPrint.jar
那么如何执行使用位于单独存档中的类的类文件呢?