2012-06-11 4 views
3

Это файл сборки:получение ошибка Ant сборки: Не удается запустить программу «питон»

<exec executable="python" failonerror="true"> 
    <arg line="${installer.izpack.dir}/utils/wrappers/izpack2exe/izpack2exe.py"/> 
    <arg line="--file=${basedir}/installer/EasyIT-installer.jar"/> 
    <arg line="--output=${basedir}/installer/EasyIT-installer.exe"/> 
    <arg line="--no-upx"/> 
</exec> 

И выход:

BUILD FAILED 
E:\Java Projects\Spark Projects\EastIT - Copy\build\build.xml:873: Execute failed: java.io.IOException: Cannot run program "python" (in directory "E:\Java Projects\Spark Projects\EastIT - Copy"): CreateProcess error=2, The system cannot find the file specified 
     at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029) 
     at java.lang.Runtime.exec(Runtime.java:615) 
     at org.apache.tools.ant.taskdefs.Execute$Java13CommandLauncher.exec(Execute.java:8 62) 
     at org.apache.tools.ant.taskdefs.Execute.launch(Execute.java:481) 
     at org.apache.tools.ant.taskdefs.Execute.execute(Execute.java:495) 
     at org.apache.tools.ant.taskdefs.ExecTask.runExecute(ExecTask.java:631) 
     at org.apache.tools.ant.taskdefs.ExecTask.runExec(ExecTask.java:672) 
     at org.apache.tools.ant.taskdefs.ExecTask.execute(ExecTask.java:498) 
     at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) 
     at sun.reflect.GeneratedMethodAccessor15.invoke(Unknown Source) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.ja va:43) 
     at java.lang.reflect.Method.invoke(Method.java:601) 
     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:392) 
     at org.apache.tools.ant.Target.performTasks(Target.java:413) 
     at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) 
     at org.apache.tools.ant.Project.executeTarget(Project.java:1368) 
     at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java :41) 
     at org.apache.tools.ant.Project.executeTargets(Project.java:1251) 
     at org.apache.tools.ant.Main.runBuild(Main.java:811) 
     at org.apache.tools.ant.Main.startAnt(Main.java:217) 
     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.io.IOException: CreateProcess error=2, The system cannot find the file specified 
     at java.lang.ProcessImpl.create(Native Method) 
     at java.lang.ProcessImpl.<init>(ProcessImpl.java:189) 
     at java.lang.ProcessImpl.start(ProcessImpl.java:133) 
     at java.lang.ProcessBuilder.start(ProcessBuilder.java:1021) 
     ... 23 more 


Total time: 50 seconds 
+0

Ну, установлен ли python? – TheLQ

ответ

10

Убедитесь, что python находится в PATH, где вы запускать сборку или указать абсолютный путь к исполняемому файлу python в задаче exec.

Просмотрите документы для exec task для получения каких-либо конкретных инструкций по использованию окон против не-окон. Обратите внимание, что указанная вами конкретная ошибка упоминается там:

A common problem is not having the executable on the PATH. In case you get an error message Cannot run program "...":CreateProcess error=2. The system cannot find the path specified. have a look at your PATH variable. Just type the command directly on the command line and if Windows finds it, Ant should do it too. (Otherwise ask on the user mailinglist for help.) If Windows can not execute the program add the directory of the programm to the PATH (set PATH=%PATH%;dirOfProgram) or specify the absolute path in the executable attribute in your buildfile.

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