2016-12-01 2 views
0

Привет Я получаю эту ошибку даже после включения пути пути jdk. Его показОшибка в пути класса java в ant build Oxygen Dita-Ot

Expected to find it in C:\Program Files\Java\jre1.8.0_111\lib\tools.jar 

код CMD создан этот

C:\Program Files\Oxygen XML Editor 17\frameworks\dita\DITA-OT2.x>ant -f integrator.xml 
Unable to locate tools.jar. Expected to find it in C:\Program Files\Java\jre1.8.0_111\lib\tools.jar 
Buildfile: C:\Program Files\Oxygen XML Editor 17\frameworks\dita\DITA-OT2.x\integrator.xml 

strict: 

integrate: 

BUILD FAILED 
C:\Program Files\Oxygen XML Editor 17\frameworks\dita\DITA-OT2.x\integrator.xml:66: The following error occurred while executing this line: 
C:\Program Files\Oxygen XML Editor 17\frameworks\dita\DITA-OT2.x\integrator.xml:44: javax.xml.transform.TransformerFactoryConfigurationError: Provider net.sf.saxon.TransformerFactoryImpl not found 
     at javax.xml.transform.FactoryFinder.newInstance(Unknown Source) 
     at javax.xml.transform.FactoryFinder.find(Unknown Source) 
     at javax.xml.transform.TransformerFactory.newInstance(Unknown Source) 
     at org.dita.dost.platform.Integrator.writePlugins(Integrator.java:514) 
     at org.dita.dost.platform.Integrator.integrate(Integrator.java:207) 
     at org.dita.dost.platform.Integrator.execute(Integrator.java:200) 
     at org.dita.dost.platform.IntegratorTask.execute(IntegratorTask.java:40) 
     at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292) 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
     at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
     at java.lang.reflect.Method.invoke(Unknown Source) 
     at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) 
     at org.apache.tools.ant.Task.perform(Task.java:348) 
     at org.apache.tools.ant.Target.execute(Target.java:435) 
     at org.apache.tools.ant.Target.performTasks(Target.java:456) 
     at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1393) 
     at org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:38) 
     at org.apache.tools.ant.Project.executeTargets(Project.java:1248) 
     at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:441) 
     at org.apache.tools.ant.taskdefs.CallTarget.execute(CallTarget.java:105) 
     at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292) 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
     at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
     at java.lang.reflect.Method.invoke(Unknown Source) 
     at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) 
     at org.apache.tools.ant.Task.perform(Task.java:348) 
     at org.apache.tools.ant.Target.execute(Target.java:435) 
     at org.apache.tools.ant.Target.performTasks(Target.java:456) 
     at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1393) 
     at org.apache.tools.ant.Project.executeTarget(Project.java:1364) 
     at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) 
     at org.apache.tools.ant.Project.executeTargets(Project.java:1248) 
     at org.apache.tools.ant.Main.runBuild(Main.java:851) 
     at org.apache.tools.ant.Main.startAnt(Main.java:235) 
     at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) 
     at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109) 
Caused by: java.lang.ClassNotFoundException: net/sf/saxon/TransformerFactoryImpl 
     at java.lang.Class.forName0(Native Method) 
     at java.lang.Class.forName(Unknown Source) 
     at javax.xml.transform.FactoryFinder.getProviderClass(Unknown Source) 
     ... 38 more 

Total time: 0 seconds 

Есть ли что-то не так с пути класса или с файлом XML-интегратора? Я следил за шагами, приведенными на веб-сайте и книге с кислородным дита-отом.

Я думаю, что проблема в этом разделе

C:\Program Files\Oxygen XML Editor 17\frameworks\dita\DITA-OT2.x\integrator.xml:66: The following error occurred while executing this line: 
C:\Program Files\Oxygen XML Editor 17\frameworks\dita\DITA-OT2.x\integrator.xml:44: javax.xml.transform.TransformerFactoryConfigurationError: Provider net.sf.saxon.TransformerFactoryImpl not found 

И мой номер строки (44,66) интегратора говорит, что это, к которому я не могу понять.

44 <integrate ditadir="${dita.dir}" strict="${strict}"/> 

65<target name="strict" description="Run integration in strict mode"> 
    66 <antcall target="integrate"> 
    67 <param name="strict" value="true"/> 
    68</antcall> 
    69</target> 

ответ

0

tools.jar только в пакете JDK, а не в пакете JRE. Вам необходимо загрузить пакет JDK8 и установить его, а затем связать свойства системы (JAVA_HOME и PATH) с новым каталогом каталога установки JDK.

JDK8 download

В конце концов, повторите вашу команду.

+0

Спасибо, но я уже скачал последнюю версию jdk. И что именно вы подразумеваете под JAVA_HOME? путь, который я знаю. –

+0

JAVA_HOME означает каталог установки JDK, на моем компьютере это «D: \ Program Files \ Java \ jdk1.8.0_60» и добавьте «% JAVA_HOME% \ bin;» к значению PATH. Тогда попробуйте еще раз :) – edwardXie

+0

Спасибо, я получил его уже и мой файл успешно работает –

0

Вы пытаетесь запустить файл integrator.xml из командной строки, и сообщение об ошибке говорит, что Saxon не находится в пути к классам.

Обычно пользователь oXygen выдает oXygen по привилегиям администратора и выбирает «Документ» - «Преобразование» - «Настроить сценарий преобразования» - «Запустить DITA OT Integrator».

Transformation Scenario

Executing: 
"c:\program files\oxygen xml editor 18.1\jre/bin/java" -Xmx256m -classpath "C:\Program Files\Oxygen XML Editor 18.1\tools\ant/lib/ant-launcher.jar" "-Dant.home=C:\Program Files\Oxygen XML Editor 18.1\tools\ant" org.apache.tools.ant.launch.Launcher -lib "C:\Program Files\Oxygen XML Editor 18.1\frameworks\dita\DITA-OT2.x\lib\ant-apache-resolver-1.9.4.jar" -lib "C:\Program Files\Oxygen XML Editor 18.1\frameworks\dita\DITA-OT2.x\lib\ant-launcher.jar" -lib "C:\Program Files\Oxygen XML Editor 18.1\frameworks\dita\DITA-OT2.x\lib\ant.jar" -lib "C:\Program Files\Oxygen XML Editor 18.1\frameworks\dita\DITA-OT2.x\lib\commons-codec-1.9.jar" -lib "C:\Program Files\Oxygen XML Editor 18.1\frameworks\dita\DITA-OT2.x\lib\commons-io-2.4.jar" -lib "C:\Program Files\Oxygen XML Editor 18.1\frameworks\dita\DITA-OT2.x\lib\dost-configuration.jar" -lib "C:\Program Files\Oxygen XML Editor 18.1\frameworks\dita\DITA-OT2.x\lib\dost-patches.jar" -lib "C:\Program Files\Oxygen XML Editor 18.1\frameworks\dita\DITA-OT2.x\lib\dost.jar" -lib "C:\Program Files\Oxygen XML Editor 18.1\frameworks\dita\DITA-OT2.x\lib\guava-19.0.jar" -lib "C:\Program Files\Oxygen XML Editor 18.1\frameworks\dita\DITA-OT2.x\lib\jsearch.jar" -lib "C:\Program Files\Oxygen XML Editor 18.1\frameworks\dita\DITA-OT2.x\lib\xml-apis-1.4.01.jar" -lib "C:\Program Files\Oxygen XML Editor 18.1\frameworks\dita\DITA-OT2.x\lib\xml-resolver-1.2.jar" -f "C:\Program Files\Oxygen XML Editor 18.1\frameworks/dita/DITA-OT2.x/integrator.xml" "-Dstrict=true" "-Dwebhelp.trial.license=no" 

Buildfile: C:\Program Files\Oxygen XML Editor 18.1\frameworks\dita\DITA-OT2.x\integrator.xml 

strict: 

integrate: 
     [jar] Building jar: C:\Program Files\Oxygen XML Editor 18.1\frameworks\dita\DITA-OT2.x\lib\dost-configuration.jar 

BUILD SUCCESSFUL 
Total time: 9 seconds 

The process finished with exit code: 0 

Этот метод позволит решить вашу проблему.

+0

Уверенный сэр, я попробую это, а затем дайте знать –

0

Ваш код показывает, что вы используете 2.x версию DITA OT. Но вы используете команду интегратора для более старой версии OT.

Вы можете использовать кислород для запуска интегратора, но если вы хотите, чтобы запустить его из командной строки, выполните следующие действия:

  1. Откройте командное окно с правами администратора: Нажмите кнопку Пуск, введите CMD, когда ЦМД. exe, щелкните правой кнопкой мыши и выберите «Запуск от имени администратора».
  2. Перейдите к Oxygen 2.x DITA OT:

    C: \ Program Files \ Oxygen XML Editor 17 \ рамки \ Дита \ Дита-OT2.x

  3. Введите следующую команду:

    бин \ Дита -install

Если он возвращается к строке без ошибок, вы должны быть хорошо идти.

Кстати, ошибка tools.jar обычно не о чем беспокоиться.

+0

Спасибо! Я хорошо поеду :) –

+0

Добро пожаловать, можете ли вы щелкнуть по стрелке, чтобы я получил свои очки-буйные? – markg

Смежные вопросы