2013-7-2

本文记录了将Ant集成到Jenkins过程中遇到的问题及解决方案,包括构建失败、权限不足等问题,并分享了一个成功的构建案例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

将ant集成到jenkins中。遇到如下问题:


(1)问题1


Started by user anonymous
Building in workspace /home/xiongmc/android/project/workspace/HomeActivity
[HomeActivity] $ /opt/apache/apache-ant-1.9.1/bin/ant
Buildfile: /home/xiongmc/android/project/workspace/HomeActivity/build.xml


BUILD FAILED
/home/xiongmc/android/project/workspace/HomeActivity/build.xml:83: Cannot find /home/xiongmc/android/adt-bundle-linux-x86_64-20130522/sdk/tools/ant/build.xml imported from /home/xiongmc/android/project/workspace/HomeActivity/build.xml


Total time: 0 seconds
Build step 'Invoke Ant' marked build as failure
Finished: FAILURE




分析:
可能原因:
a)Jensins
b)linux 环境。
c)android_sdk
d) helloword。
f)。。。


回答:
注意权限,因为测试这个Demo时,发现了此问题。
BUILD FAILED
/home/xiongmc/android/project/workspace/Helloword/build.xml:7: The following error occurred while executing this line:
java.io.FileNotFoundException: /home/xiongmc/build.xml (权限不够)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:138)
at org.apache.tools.ant.helper.ProjectHelper2.parse(ProjectHelper2.java:249)
at org.apache.tools.ant.helper.ProjectHelper2.parse(ProjectHelper2.java:167)
at org.apache.tools.ant.taskdefs.ImportTask.importResource(ImportTask.java:230)
at org.apache.tools.ant.taskdefs.ImportTask.execute(ImportTask.java:162)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
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:606)
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.helper.ProjectHelper2.parse(ProjectHelper2.java:179)
at org.apache.tools.ant.ProjectHelper.configureProject(ProjectHelper.java:93)
at org.apache.tools.ant.Main.runBuild(Main.java:826)
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)




(2)问题2


BUILD FAILED
/home/xiongmc/android/adt-bundle-linux-x86_64-20130522/sdk/tools/ant/build.xml:977: Cannot run two different modes at the same time. If you are running more than one debug/release/instrument type targets, call them from different Ant calls.






分解问题:
a)
b)
c)


回答:


clean
debug
uninstall
installd
==
clean
debug
uninstall
install
因为(你需要阅读“谁”的问题。):
-rw-r--r-- 1 jenkins nogroup 303116 7月 2 15:54 RoblectricSample-debug.apk
-rw-r--r-- 1 jenkins nogroup 303108 7月 2 15:54 RoblectricSample-debug-unaligned.apk
有个包存在。


经过尝试,自己遇到问题时,不要逃避问题。多一些思考(a,b,c)。这样你的经历才能转换为经验。一定要记住柳传志老师的解决问题的道理-“
争取追随
“要部下信你,还要有具体办法,通过实践证明你的办法是对的。我跟下级交往,事情怎么决定有三个原则:同事提出的想法,我自己想不清楚,在这种情况下,肯定按照人家的想法做;当我和同事都有看法,分不清谁对谁错,发生争执的时候,我采取的办法是,按你说的做,但是,我要把我的忠告告诉你,最后要找后帐,成与否要有个总结。你做对了,表扬你,承认你对,我再反思我当初为什么要那么做。你做错了,你得给我说明白,当初为什么不按我说的做,我的话,你为什么不认真考虑;第三种情况是,当我把事想清楚了,我就坚决地按照我想的做。”



==========================================================================================================================================================================================================
成功案例:
Started by user anonymous
Building in workspace /home/xiongmc/android/project/workspace/HomeActivity
[HomeActivity] $ /opt/apache/apache-ant-1.9.1/bin/ant clean debug install
Buildfile: /home/xiongmc/android/project/workspace/HomeActivity/build.xml


-check-env:
[checkenv] Android SDK Tools Revision 22.0.1
[checkenv] Installed at /home/xiongmc/android/adt-bundle-linux-x86_64-20130522/sdk


-setup:
[echo] Project Name: RoblectricSample
[gettype] Project Type: Application


-pre-clean:


clean:
[delete] Deleting directory /home/xiongmc/android/project/workspace/HomeActivity/bin
[delete] Deleting directory /home/xiongmc/android/project/workspace/HomeActivity/gen
[getlibpath] Library dependencies:
[getlibpath] No Libraries
[subant] No sub-builds to iterate on


-set-mode-check:


-set-debug-files:


-check-env:
[checkenv] Android SDK Tools Revision 22.0.1
[checkenv] Installed at /home/xiongmc/android/adt-bundle-linux-x86_64-20130522/sdk


-setup:
[echo] Project Name: RoblectricSample
[gettype] Project Type: Application


-set-debug-mode:


-debug-obfuscation-check:


-pre-build:


-build-setup:
[getbuildtools] Using latest Build Tools: 17.0.0
[echo] Resolving Build Target for RoblectricSample...
[gettarget] Project Target: Android 4.1.2
[gettarget] API level: 16
[echo] ----------
[echo] Creating output directories if needed...
[mkdir] Created dir: /home/xiongmc/android/project/workspace/HomeActivity/bin
[mkdir] Created dir: /home/xiongmc/android/project/workspace/HomeActivity/bin/res
[mkdir] Created dir: /home/xiongmc/android/project/workspace/HomeActivity/gen
[mkdir] Created dir: /home/xiongmc/android/project/workspace/HomeActivity/bin/classes
[mkdir] Created dir: /home/xiongmc/android/project/workspace/HomeActivity/bin/dexedLibs
[echo] ----------
[echo] Resolving Dependencies for RoblectricSample...
[dependency] Ordered libraries:
[echo] ----------
[echo] Building Libraries with 'debug'...
[subant] No sub-builds to iterate on


-code-gen:
[mergemanifest] Merging AndroidManifest files into one.
[mergemanifest] Manifest merger disabled. Using project manifest only.
[echo] Handling aidl files...
[aidl] No AIDL files to compile.
[echo] ----------
[echo] Handling RenderScript files...
[renderscript] No RenderScript files to compile.
[echo] ----------
[echo] Handling Resources...
[aapt] Generating resource IDs...
[echo] ----------
[echo] Handling BuildConfig class...
[buildconfig] Generating BuildConfig class.


-pre-compile:


-compile:
[javac] Compiling 37 source files to /home/xiongmc/android/project/workspace/HomeActivity/bin/classes
[javac] 注: /home/xiongmc/android/project/workspace/HomeActivity/src/main/java/com/pivotallabs/api/ApiGateway.java使用了未经检查或不安全的操作。
[javac] 注: 有关详细信息, 请使用 -Xlint:unchecked 重新编译。


-post-compile:


-obfuscate:


-dex:
[dex] input: /home/xiongmc/android/project/workspace/HomeActivity/bin/classes
[dex] input: /home/xiongmc/android/project/workspace/HomeActivity/libs/guice-3.0-no_aop.jar
[dex] input: /home/xiongmc/android/project/workspace/HomeActivity/libs/roboguice-2.0.jar
[dex] input: /home/xiongmc/android/project/workspace/HomeActivity/libs/javax.inject.jar
[dex] Pre-Dexing /home/xiongmc/android/project/workspace/HomeActivity/libs/guice-3.0-no_aop.jar -> guice-3.0-no_aop-c078118679e9a2b1f5309ec759bd35b4.jar


[dex] Pre-Dexing /home/xiongmc/android/project/workspace/HomeActivity/libs/roboguice-2.0.jar -> roboguice-2.0-13f5f6f86a6fa32592aefa0b12cf7c94.jar


[dex] Pre-Dexing /home/xiongmc/android/project/workspace/HomeActivity/libs/javax.inject.jar -> javax.inject-f3f6a1a7f83a9a8c872c6f38e47ded5f.jar
[dex] Converting compiled files and external libraries into /home/xiongmc/android/project/workspace/HomeActivity/bin/classes.dex...


[dx] Merged dex A (55 defs/35.6KiB) with dex B (410 defs/380.8KiB). Result is 465 defs/520.2KiB. Took 0.2s
[dx] Merged dex A (465 defs/520.2KiB) with dex B (119 defs/102.4KiB). Result is 584 defs/823.1KiB. Took 0.1s


[dx] Merged dex A (584 defs/823.1KiB) with dex B (6 defs/1.6KiB). Result is 590 defs/1182.1KiB. Took 0.1s


-crunch:
[crunch] Crunching PNG Files in source dir: /home/xiongmc/android/project/workspace/HomeActivity/res
[crunch] To destination dir: /home/xiongmc/android/project/workspace/HomeActivity/bin/res
[crunch] Processing image to cache: /home/xiongmc/android/project/workspace/HomeActivity/res/drawable/app_icon.png => /home/xiongmc/android/project/workspace/HomeActivity/bin/res/drawable/app_icon.png
[crunch] (processed image to cache entry /home/xiongmc/android/project/workspace/HomeActivity/bin/res/drawable/app_icon.png: 0% size of source)
[crunch] Processing image to cache: /home/xiongmc/android/project/workspace/HomeActivity/res/drawable/pivotal_tracker_small.png => /home/xiongmc/android/project/workspace/HomeActivity/bin/res/drawable/pivotal_tracker_small.png
[crunch] (processed image to cache entry /home/xiongmc/android/project/workspace/HomeActivity/bin/res/drawable/pivotal_tracker_small.png: 0% size of source)
[crunch] Processing image to cache: /home/xiongmc/android/project/workspace/HomeActivity/res/drawable/pivotallabs_logo.png => /home/xiongmc/android/project/workspace/HomeActivity/bin/res/drawable/pivotallabs_logo.png
[crunch] (processed image to cache entry /home/xiongmc/android/project/workspace/HomeActivity/bin/res/drawable/pivotallabs_logo.png: 0% size of source)
[crunch] Processing image to cache: /home/xiongmc/android/project/workspace/HomeActivity/res/drawable/roboguice.png => /home/xiongmc/android/project/workspace/HomeActivity/bin/res/drawable/roboguice.png
[crunch] (processed image to cache entry /home/xiongmc/android/project/workspace/HomeActivity/bin/res/drawable/roboguice.png: 96% size of source)
[crunch] Processing image to cache: /home/xiongmc/android/project/workspace/HomeActivity/res/drawable/robolectric.png => /home/xiongmc/android/project/workspace/HomeActivity/bin/res/drawable/robolectric.png
[crunch] (processed image to cache entry /home/xiongmc/android/project/workspace/HomeActivity/bin/res/drawable/robolectric.png: 64% size of source)
[crunch] Crunched 5 PNG files to update cache


-package-resources:
[aapt] Creating full resource package...


-package:
[apkbuilder] Current build type is different than previous build: forced apkbuilder run.
[apkbuilder] Creating RoblectricSample-debug-unaligned.apk and signing it with a debug key...


-post-package:


-do-debug:
[zipalign] Running zip align on final apk...


[echo] Debug Package: /home/xiongmc/android/project/workspace/HomeActivity/bin/RoblectricSample-debug.apk
[propertyfile] Creating new property file: /home/xiongmc/android/project/workspace/HomeActivity/bin/build.prop
[propertyfile] Updating property file: /home/xiongmc/android/project/workspace/HomeActivity/bin/build.prop
[propertyfile] Updating property file: /home/xiongmc/android/project/workspace/HomeActivity/bin/build.prop
[propertyfile] Updating property file: /home/xiongmc/android/project/workspace/HomeActivity/bin/build.prop


-post-build:


debug:


install:
[echo] Installing /home/xiongmc/android/project/workspace/HomeActivity/bin/RoblectricSample-debug.apk onto default emulator or device...
[exec] 3334 KB/s (303116 bytes in 0.088s)
[exec] pkg: /data/local/tmp/RoblectricSample-debug.apk


[exec] Success


BUILD SUCCESSFUL
Total time: 15 seconds
Finished: SUCCESS




(2)
Dashboard is bussiness intellagental (BI).


what?
Cobertura Plugin is report instrument.
why?
Business Intelligence(BI) Dashboards are a must for every organization.
how?
Cobertura Plugin 是如何集成 ant?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值