2010-01-28 44 views
0

我编写了一个使用XPath查询某些XML配置文件的应用程序。当我在eclipse中运行它时,它工作得很好。我还写了一个运行应用程序的蚂蚁目标。但是,从蚂蚁运行它时,该应用程序会给我一个运行时异常。例外情况如下:
XPathFactory#newInstance failed to create an XPathFactory for the default object model: http://java.sun.com/jaxp.xpath/dom
我正在使用JDK 1.6,它应该已经有一个XPath实现。有什么我失踪?当使用ANT运行我的应用程序时,找不到XPath实现

编辑1:添加从ANT获取的完整堆栈跟踪。我正在使用1.5合规性。

 
Detected Java version: 1.5 in: C:\Java\jdk1.6.0_02\jre 
Detected OS: Windows XP 
parsing buildfile C:\Automation\LocalizationResourceAnalyzer-int\Tools\LocalizationResourceAnalyzer\dist\run_lora.xml with URI = file:///C:/Automation/LocalizationResourceAnalyzer-int/Tools/LocalizationResourceAnalyzer/dist/run_lora.xml 
Project base dir set to: C:\Automation\LocalizationResourceAnalyzer-int\Tools\LocalizationResourceAnalyzer\dist 
Build sequence for target(s) `run_all' is [run_all] 
Complete build sequence is [run_all, run, ] 

run_all: 
Project base dir set to: C:\Automation\LocalizationResourceAnalyzer-int\Tools\LocalizationResourceAnalyzer\dist 
    [antcall] calling target(s) [run] in build file C:\Automation\LocalizationResourceAnalyzer-int\Tools\LocalizationResourceAnalyzer\dist\run_lora.xml 
parsing buildfile C:\Automation\LocalizationResourceAnalyzer-int\Tools\LocalizationResourceAnalyzer\dist\run_lora.xml with URI = file:///C:/Automation/LocalizationResourceAnalyzer-int/Tools/LocalizationResourceAnalyzer/dist/run_lora.xml 
Project base dir set to: C:\Automation\LocalizationResourceAnalyzer-int\Tools\LocalizationResourceAnalyzer\dist 
Override ignored for property config.dir 
Override ignored for property report.dir 
Build sequence for target(s) `run' is [run] 
Complete build sequence is [run, run_all, ] 
    [antcall] Entering C:\Automation\LocalizationResourceAnalyzer-int\Tools\LocalizationResourceAnalyzer\dist\run_lora.xml... 
Build sequence for target(s) `run' is [run] 
Complete build sequence is [run, run_all, ] 

run: 
    [echo] ant.java.version: 1.5 
    [echo] C:\apache-ant-1.6.5\lib\ant-launcher.jar;C:\Program Files\Common Files\Compuware\DLM40JNI.jar;C:\apache-ant-1.6.5\lib\ant-antlr.jar;C:\apache-ant-1.6.5\lib\ant-apache-bcel.jar;C:\apache-ant-1.6.5\lib\ant-apache-bsf.jar;C:\apache-ant-1.6.5\lib\ant-apache-log4j.jar;C:\apache-ant-1.6.5\lib\ant-apache-oro.jar;C:\apache-ant-1.6.5\lib\ant-apache-regexp.jar;C:\apache-ant-1.6.5\lib\ant-apache-resolver.jar;C:\apache-ant-1.6.5\lib\ant-commons-logging.jar;C:\apache-ant-1.6.5\lib\ant-commons-net.jar;C:\apache-ant-1.6.5\lib\ant-icontract.jar;C:\apache-ant-1.6.5\lib\ant-jai.jar;C:\apache-ant-1.6.5\lib\ant-javamail.jar;C:\apache-ant-1.6.5\lib\ant-jdepend.jar;C:\apache-ant-1.6.5\lib\ant-jmf.jar;C:\apache-ant-1.6.5\lib\ant-jsch.jar;C:\apache-ant-1.6.5\lib\ant-junit.jar;C:\apache-ant-1.6.5\lib\ant-launcher.jar;C:\apache-ant-1.6.5\lib\ant-netrexx.jar;C:\apache-ant-1.6.5\lib\ant-nodeps.jar;C:\apache-ant-1.6.5\lib\ant-starteam.jar;C:\apache-ant-1.6.5\lib\ant-stylebook.jar;C:\apache-ant-1.6.5\lib\ant-swing.jar;C:\apache-ant-1.6.5\lib\ant-trax.jar;C:\apache-ant-1.6.5\lib\ant-vaj.jar;C:\apache-ant-1.6.5\lib\ant-weblogic.jar;C:\apache-ant-1.6.5\lib\ant-xalan1.jar;C:\apache-ant-1.6.5\lib\ant-xslp.jar;C:\apache-ant-1.6.5\lib\ant.jar;C:\apache-ant-1.6.5\lib\bsf.jar;C:\apache-ant-1.6.5\lib\cruisecontrol-antlib.jar;C:\apache-ant-1.6.5\lib\js.jar;C:\apache-ant-1.6.5\lib\junit.jar;C:\apache-ant-1.6.5\lib\statcvs.jar;C:\apache-ant-1.6.5\lib\xercesImpl.jar;C:\apache-ant-1.6.5\lib\xml-apis.jar;C:\Java\jdk1.6.0_02\lib\tools.jar 
    [java] Running in same VM Executing 'com.ti.et.swtest.l10n.lora.Lora' with arguments: 
    [java] '-conf' 
    [java] 'C:\Automation\LocalizationResourceAnalyzer-int\Tools\LocalizationResourceAnalyzer\dist\config\Nspire\product_bundles.xml' 
    [java] '-locales' 
    [java] 'C:\Automation\LocalizationResourceAnalyzer-int\Tools\LocalizationResourceAnalyzer\dist\config\Nspire\supported_locales.xml' 
    [java] '-xrules' 
    [java] 'C:\Automation\LocalizationResourceAnalyzer-int\Tools\LocalizationResourceAnalyzer\dist\config\Nspire\exclusion_rules.xml' 
    [java] '-loc' 
    [java] 'C:\LoRA_Reports\Nspire\localization_report.xml' 
    [java] 
    [java] The ' characters around the executable and arguments are 
    [java] not part of the command. 
    [java] Feb 2, 2010 6:28:07 PM com.ti.et.swtest.l10n.lora.Lora main 
    [java] INFO: Localization Resource Analyzer (LoRA) started. 
    [java] Feb 2, 2010 6:28:07 PM com.ti.et.swtest.l10n.lora.Lora loadLocales 
    [java] INFO: Loading locales from: C:\Automation\LocalizationResourceAnalyzer-int\Tools\LocalizationResourceAnalyzer\dist\config\Nspire\supported_locales.xml 
    [java] java.lang.RuntimeException: XPathFactory#newInstance() failed to create an XPathFactory for the default object model: http://java.sun.com/jaxp/xpath/dom with the XPathFactoryConfigurationException: javax.xml.xpath.XPathFactoryConfigurationException: No XPathFactory implementation found for the object model: http://java.sun.com/jaxp/xpath/dom 
    [java]  at org.apache.tools.ant.taskdefs.ExecuteJava.execute(ExecuteJava.java:180) 
    [java]  at org.apache.tools.ant.taskdefs.Java.run(Java.java:710) 
    [java]  at org.apache.tools.ant.taskdefs.Java.executeJava(Java.java:178) 
    [java]  at org.apache.tools.ant.taskdefs.Java.execute(Java.java:84) 
    [java]  at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275) 
    [java]  at org.apache.tools.ant.Task.perform(Task.java:364) 
    [java]  at org.apache.tools.ant.Target.execute(Target.java:341) 
    [java]  at org.apache.tools.ant.Target.performTasks(Target.java:369) 
    [java]  at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216) 
    [java]  at org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:37) 
    [java]  at org.apache.tools.ant.Project.executeTargets(Project.java:1068) 
    [java]  at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:382) 
    [java]  at org.apache.tools.ant.taskdefs.CallTarget.execute(CallTarget.java:107) 
    [java]  at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275) 
    [java]  at org.apache.tools.ant.Task.perform(Task.java:364) 
    [java]  at org.apache.tools.ant.Target.execute(Target.java:341) 
    [java]  at org.apache.tools.ant.Target.performTasks(Target.java:369) 
    [java]  at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216) 
    [java]  at org.apache.tools.ant.Project.executeTarget(Project.java:1185) 
    [java]  at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:40) 
    [java]  at org.apache.tools.ant.Project.executeTargets(Project.java:1068) 
    [java]  at org.apache.tools.ant.Main.runBuild(Main.java:668) 
    [java]  at org.apache.tools.ant.Main.startAnt(Main.java:187) 
    [java]  at org.apache.tools.ant.launch.Launcher.run(Launcher.java:246) 
    [java]  at org.apache.tools.ant.launch.Launcher.main(Launcher.java:67) 
    [java] Caused by: java.lang.RuntimeException: XPathFactory#newInstance() failed to create an XPathFactory for the default object model: http://java.sun.com/jaxp/xpath/dom with the XPathFactoryConfigurationException: javax.xml.xpath.XPathFactoryConfigurationException: No XPathFactory implementation found for the object model: http://java.sun.com/jaxp/xpath/dom 
    [java]  at javax.xml.xpath.XPathFactory.newInstance(XPathFactory.java:101) 
    [java]  at com.ti.et.swtest.util.xml.XmlFile.(Unknown Source) 
    [java]  at com.ti.et.swtest.util.xml.XmlFile.(Unknown Source) 
    [java]  at com.ti.et.swtest.l10n.lora.Lora.loadLocales(Unknown Source) 
    [java]  at com.ti.et.swtest.l10n.lora.Lora.main(Unknown Source) 
    [java]  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    [java]  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
    [java]  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
    [java]  at java.lang.reflect.Method.invoke(Method.java:597) 
    [java]  at org.apache.tools.ant.taskdefs.ExecuteJava.run(ExecuteJava.java:202) 
    [java]  at org.apache.tools.ant.taskdefs.ExecuteJava.execute(ExecuteJava.java:134) 
    [java]  ... 24 more 
    [java] --- Nested Exception --- 
    [java] java.lang.RuntimeException: XPathFactory#newInstance() failed to create an XPathFactory for the default object model: http://java.sun.com/jaxp/xpath/dom with the XPathFactoryConfigurationException: javax.xml.xpath.XPathFactoryConfigurationException: No XPathFactory implementation found for the object model: http://java.sun.com/jaxp/xpath/dom 
    [java]  at javax.xml.xpath.XPathFactory.newInstance(XPathFactory.java:101) 
    [java]  at com.ti.et.swtest.util.xml.XmlFile.(Unknown Source) 
    [java]  at com.ti.et.swtest.util.xml.XmlFile.(Unknown Source) 
    [java]  at com.ti.et.swtest.l10n.lora.Lora.loadLocales(Unknown Source) 
    [java]  at com.ti.et.swtest.l10n.lora.Lora.main(Unknown Source) 
    [java]  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    [java]  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
    [java]  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
    [java]  at java.lang.reflect.Method.invoke(Method.java:597) 
    [java]  at org.apache.tools.ant.taskdefs.ExecuteJava.run(ExecuteJava.java:202) 
    [java]  at org.apache.tools.ant.taskdefs.ExecuteJava.execute(ExecuteJava.java:134) 
    [java]  at org.apache.tools.ant.taskdefs.Java.run(Java.java:710) 
    [java]  at org.apache.tools.ant.taskdefs.Java.executeJava(Java.java:178) 
    [java]  at org.apache.tools.ant.taskdefs.Java.execute(Java.java:84) 
    [java]  at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275) 
    [java]  at org.apache.tools.ant.Task.perform(Task.java:364) 
    [java]  at org.apache.tools.ant.Target.execute(Target.java:341) 
    [java]  at org.apache.tools.ant.Target.performTasks(Target.java:369) 
    [java]  at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216) 
    [java]  at org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:37) 
    [java]  at org.apache.tools.ant.Project.executeTargets(Project.java:1068) 
    [java]  at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:382) 
    [java]  at org.apache.tools.ant.taskdefs.CallTarget.execute(CallTarget.java:107) 
    [java]  at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275) 
    [java]  at org.apache.tools.ant.Task.perform(Task.java:364) 
    [java]  at org.apache.tools.ant.Target.execute(Target.java:341) 
    [java]  at org.apache.tools.ant.Target.performTasks(Target.java:369) 
    [java]  at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216) 
    [java]  at org.apache.tools.ant.Project.executeTarget(Project.java:1185) 
    [java]  at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:40) 
    [java]  at org.apache.tools.ant.Project.executeTargets(Project.java:1068) 
    [java]  at org.apache.tools.ant.Main.runBuild(Main.java:668) 
    [java]  at org.apache.tools.ant.Main.startAnt(Main.java:187) 
    [java]  at org.apache.tools.ant.launch.Launcher.run(Launcher.java:246) 
    [java]  at org.apache.tools.ant.launch.Launcher.main(Launcher.java:67) 
    [antcall] Exiting C:\Automation\LocalizationResourceAnalyzer-int\Tools\LocalizationResourceAnalyzer\dist\run_lora.xml. 

BUILD SUCCESSFUL 
Total time: 0 seconds 

+0

你能发布一个更大的堆栈跟踪和一些你的环境的更多细节(appservers,classpath等)吗? – Thimmayya 2010-02-02 21:32:39

回答

1

让你的类是在一个新的Java虚拟机中运行的属性fork="true"添加到你的java任务的ant脚本。 ant中的某些内容可能与内置于JDK中的XML库冲突。

1

这个异常看起来像是来自XPathFactory类,所以java找到了正确的库。相反,它看起来像XPathFactory崩溃。或许this有帮助?

0
  • 如果你已经声明了一个系统属性或$ JAVA_HOME/lib目录/ jaxp.properties的JAXP财产 “javax.xml.xpath.XPathFactory:URI”,并赋值为“http://java.sun.com/jaxp.xpath/DOM “,那么我会建议将该值更改为”http://java.sun.com/jaxp/xpath/dom“。
  • 如果您确实已正确声明上述属性,请尝试完全删除该属性。
  • 如果它仍然无法正常工作,请在实例化XPathFactory之前添加一些代码,以检测该类是从哪个jar中加载的。 “请参阅ClassLoader.findResource(String name)”。我发现Ant还打包了一个xml-apis.jar,它具有XPathFactoryFinder和XPathFactory的实现,可能会干扰JDK中的类。

HTH

+0

我在'JAVA_HOME'下的任何地方都看不到名为'jaxp.properties'的文件。 – ArtOfWarfare 2016-12-06 19:30:01

0

我知道这是一个较老的线程,但this post of mine可能会解决这个问题。它使用我从未见过的-D参数找到您指定的XPathFactory。

相关问题