【问题标题】:JAI installation/useJAI安装/使用
【发布时间】:2014-01-09 16:08:22
【问题描述】:

我使用 JAI 制作了一个 Java 类。该课程在 Netbeans 中运行良好。现在我必须添加 cmd.exejavac

但是,无论我从 JAI 库中尝试过什么,现在该类都无法正常工作。 这是我在课堂上使用 JAI 的地方。

import javax.media.jai.JAI;
import javax.media.jai.RenderedImageAdapter;
...
RenderedImage rendimg=JAI.create("fileload","/Users/Blob/Desktop/projet_jni/ressources/init.pgm");
BufferedImage init = new RenderedImageAdapter(rendimg).getAsBufferedImage();

我尝试使用 jai-1_1_3-lib-windows-i586-jdk.exe 安装 JAI。 我尝试像这样使用 jai-1_1_3-lib-windows-i586.jar(在 cmd 中):

javac -cp ../ressources/ressources.jar;../ressources/jai_windows-i586.jar *.java

它编译正常,但我总是得到错误:

C:\Users\USER\Desktop\projet_jni\part_java>java Main
Exception in thread "main" java.lang.NoClassDefFoundError: javax/media/jai/JAI
    at ImgProcessing.<init>(ImgProcessing.java:46)
    at Fenetre.<init>(Fenetre.java:23)
    at Main.main(Main.java:25)
Caused by: java.lang.ClassNotFoundException: javax.media.jai.JAI
    at java.net.URLClassLoader$1.run(Unknown Source)
    at java.net.URLClassLoader$1.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    ... 3 more

我该如何解决这个问题?

编辑:

尝试了同样的错误:

java -classpath "../ressources/ressources.jar;../ressources/jai_windows-i586.jar;." Main

试过了:

java -cp ../ressources/ressources.jar;../ressources/jai_windows-i586.jar Main

无法找到或加载“Main”。

【问题讨论】:

    标签: java jai


    【解决方案1】:

    运行应用程序时需要与编译时相同的类路径。

    即:

    java -cp .;../ressources/ressources.jar;../ressources/jai_windows-i586.jar Main
    

    【讨论】:

    • 谢谢!我试过了,但它告诉我无法找到或加载 Main 类。试图做其他方式(见编辑)但它没有改变任何东西。
    • @user3178283:我更新了答案,现在包括类路径中的当前目录。没有引号。
    • 现在又出现第一个错误:java.lang.NoClassDefFoundError: javax/media/jai/JAI
    • 如果在 OS X 或 Linux/Unix 上,请尝试全部替换;与 : 在命令行上。我假设Windows。不同平台有不同的分隔符,与Java无关。
    • 您好抱歉耽搁了,但我正在使用 Windows。我想也许我会尝试设置“Java Advanced Imaging-Image I/O”以防万一,但我不认为是这样。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多