4

Jenkinsから単純なAndroidプロジェクトをビルドしようとしていますが、ビルドが失敗し、出力メッセージ(詳細)が表示されます。

Building in workspace /var/lib/jenkins/jobs/MyProj/workspace
[MyProj] $ ant -file build.xml help -v
Apache Ant version 1.8.1 compiled on October 13 2010
Buildfile: /home/ramps/MyProj/build.xml
Detected Java version: 1.6 in: /usr/lib/jvm/java-6-openjdk/jre
Detected OS: Linux
parsing buildfile /home/ramps/MyProj/build.xml with URI = file:/home/ramps/MyProj/build.xml
Project base dir set to: /home/ramps/MyProj
parsing buildfile jar:file:/usr/share/ant/lib/ant.jar!/org/apache/tools/ant/antlib.xml with URI = jar:file:/usr/share/ant/lib/ant.jar!/org/apache/tools/ant/antlib.xml from a zip file
 [property] Loading /home/ramps/MyProj/local.properties
 [property] Loading /home/ramps/MyProj/ant.properties
Importing file /home/ramps/MyProj/custom_rules.xml from /home/ramps/MyProj/build.xml
Cannot find /home/ramps/MyProj/custom_rules.xml imported from /home/ramps/MyProj/build.xml
Importing file /usr/share/android-sdk-linux/tools/ant/build.xml from /home/ramps/MyProj/build.xml

BUILD FAILED
/home/ramps/MyProj/build.xml:81: Cannot find /usr/share/android-sdk-linux/tools/ant/build.xml imported from /home/ramps/MyProj/build.xml
    at org.apache.tools.ant.taskdefs.ImportTask.importResource(ImportTask.java:181)
    at org.apache.tools.ant.taskdefs.ImportTask.execute(ImportTask.java:162)
    at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:616)
    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:390)
    at org.apache.tools.ant.helper.ProjectHelper2.parse(ProjectHelper2.java:179)
    at org.apache.tools.ant.ProjectHelper.configureProject(ProjectHelper.java:82)
    at org.apache.tools.ant.Main.runBuild(Main.java:786)
    at org.apache.tools.ant.Main.startAnt(Main.java:218)
    at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280)
    at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 0 seconds
Build step 'Invoke Ant' marked build as failure
Finished: FAILURE
  • MyProjは、次の方法で作成されたクリーンなプロジェクトです。

    android create project --name MyProj --package com.myproj --target "android-15" --path MyProj --activity MyProj

  • もちろん、ファイル「/usr/share/android-sdk-linux/tools/ant/build.xml」は存在します。

  • シェルからの「anthelp」は正常に実行されます。
  • local.propertiesには、AndroidSDKへの有効なパスが含まれています。

    sdk.dir = / usr / share / android-sdk-linux

MyProj /build.xmlが「/usr/share/android-sdk-linux/tools/ant/build.xml」を見つけられない理由はありますか?

4

1 に答える 1

7

わかりました、なんとか解決しました。ユーザーjenkinsには、android-sdk-linuxフォルダーに入る権限がありませんでした。

一般に、このような問題をデバッグするときは、Jenkinsが行っていることを手動で実行してみると非常に役立ちます。

$sudo su jenkins

そして今、jenkinsユーザーがフォルダを入力しようとしたり、新しいフォルダを作成したりします。

于 2012-06-02T18:49:05.957 に答える