查询我的文件夹中:撒克逊9.4从cygwin的
/cygdrive/d/ragsxq
其中我遵守一些简单的X查询支杆经由撒克逊X-查询引擎执行...(撒克逊9.4 HE)
下面的语句:
$ java -classpath /cygdrive/d/saxon/saxon9he.jar net.sf.saxon.Query -q:ragsXQuery.xq
给出:
java.lang.NoClassDefFoundError: net/sf/saxon/Query Caused by:
java.lang.ClassNotFoundException: net.sf.saxon.Query 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) Could not find the main class:
net.sf.saxon.Query. Program will exit. Exception in thread "main"
但低于stateme nt工作正常:
$ java -classpath ../saxon/saxon9he.jar net.sf.saxon.Query -q:ragsXQuery.xq
?!?!
与类加载器有关。 Permmissions ?? Cygwin?嗯...
非常感谢您指出这个Cygwin行为!
但奇怪的是,当我尝试在Mac OS Lion上通过Eclipse(Indigo)运行Xquery时,遇到此java.lang.NoClassDefFoundError
(与上述完全相同)...通过XQDT plugin,我有通过提供saxon9he.jar的全路径配置XQuery引擎&主要类即net.sf.saxon.Query
请注意,Windows-XP上的类似设置工作正常。
这一次,我想这可能是一些Classpath问题或Mac OS的Java对待事物的方式不同?