以文本方式查看主题

-  计算机科学论坛  (http://bbs.xml.org.cn/index.asp)
--  『 Semantic Web(语义Web)/描述逻辑/本体 』  (http://bbs.xml.org.cn/list.asp?boardid=2)
----  [求助]Jena的问题, 谢谢大家帮忙  (http://bbs.xml.org.cn/dispbbs.asp?boardid=2&rootid=&id=39468)


--  作者:Cherryun
--  发布时间:10/28/2006 10:54:00 AM

--  [求助]Jena的问题, 谢谢大家帮忙
我下载了JENA2.3, 然后把所有LIB文件夹的文件都设置在CLASSPATH里了.
运行TEST.BAT 也是正常的.
然后我选了src-examples\jena\examples\rdf 下的Tutorial01.java想做测试, 文件编译过去了,可是运行的时候显示这样的错误:
C:\Program Files\Jena-2.3\src-examples\jena\examples\rdf>java Tutorial01
Exception in thread "main" java.lang.NoClassDefFoundError: Tutorial01 (wrong nam
e: jena/examples/rdf/Tutorial01)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(Unknown Source)
        at java.security.SecureClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.access$100(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)
        at java.lang.ClassLoader.loadClassInternal(Unknown Source)

刚学这个,希望大家帮我看看是什么问题. 谢谢了!!!!!


--  作者:jpz6311whu
--  发布时间:10/28/2006 1:35:00 PM

--  
请楼主把环境变量classpath贴出来看看
--  作者:Cherryun
--  发布时间:10/29/2006 1:30:00 AM

--  
谢谢你的回复!
classpath=.;%JENAROOT%\lib\antlr-2.7.5.jar;%JENAROOT%\lib\arq.jar;%JENAROOT%\lib\commons-logging.jar;%JENAROOT%\lib\concurrent.jar; %JENAROOT%\lib\icu4j_3_4.jar; %JENAROOT%\lib\jakarta-oro-2.0.8.jar;%JENAROOT%\lib\jena.jar;%JENAROOT%\lib\jenatest.jar;%JENAROOT%\lib\junit.jar;%JENAROOT%\lib\log4j-1.2.12.jar;%JENAROOT%\lib\stax-1.1.1-dev.jar;%JENAROOT%\lib\stax-api-1.0.jar;%JENAROOT%\lib\xercesImpl.jar;%JENAROOT%\lib\xml-apis.jar;%JAVAHOME%\lib\dt.jar;%JAVAHOME%\lib\tools.jar;

我的CLASSPATH是这样设置的,不知道是不是有什么问题.谢谢了


--  作者:goodhero
--  发布时间:10/29/2006 10:16:00 AM

--  
你的运行方式有问题呀,因为Tutorial01是有package的,打开源代码,看看
package jena.examples.rdf ;
所以在src-examples\jena\examples\rdf 下编译Tutorial01.java生成 .class文件后,
应该把目录退回到src-examples然后运行java  jena.examples.rdf.Tutorial01
--  作者:chenmanli
--  发布时间:10/29/2006 10:41:00 AM

--  
我在JBuilder下也遇到同样的问题。后来解决了,错是出在我没把lib包的.jar文件加全(Jena2.2有10个jar文件,Jena2.4有15个),改了之后,对于Tutorial01文件,在Jena2.2和2.Jena2.4都是正确的。
--  作者:Cherryun
--  发布时间:10/29/2006 11:02:00 AM

--  
--  作者:goodhero
--  发布时间:2006-10-29 10:16:00

--  
你的运行方式有问题呀,因为Tutorial01是有package的,打开源代码,看看
package jena.examples.rdf ;
所以在src-examples\jena\examples\rdf 下编译Tutorial01.java生成 .class文件后,
应该把目录退回到src-examples然后运行java  jena.examples.rdf.Tutorial01


原来是这样啊,真的太感谢了.我还一直以为是自己的安装有问题呢. 呵呵!


--  作者:Cherryun
--  发布时间:10/29/2006 11:10:00 AM

--  
谢谢的大家的回复.现在问题解决了.特别要谢一下goodhero:)
我刚学Semantic Web,也是刚加入这个论坛. 以后还请大家多多帮忙.
--  作者:goodhero
--  发布时间:10/29/2006 11:16:00 AM

--  
呵呵,不用谢的,互相学习共同进步
--  作者:fangel2000
--  发布时间:10/31/2006 12:18:00 PM

--  
或者直接javac -d . Tutorial01.java也可以的,自动生成包相对应的文件夹
然后再java Tutorial01
--  作者:goodhero
--  发布时间:10/31/2006 2:36:00 PM

--  
是的,这样可以,道理是一样的,就是包名与目录对应的原则

--  作者:goodhero
--  发布时间:10/31/2006 2:41:00 PM

--  
哦,但是运行时仍然需要java  jena.examples.rdf.Tutorial01 ,因为一旦存在包,那么类的全名就是包名+类名了,并且这样才能使包名与目录对应起来
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
281.250ms