2013-10-04 17 views
1

我一直在努力嘗試獲得一個自動化系統來建立我的Android應用程序,我會很感激,如果有人可以幫助我或指向正確的方向。我寫了一個shell腳本,它從Git獲取最新版本,構建它並將APK發送到Testflight。這個腳本在我自己運行時正常工作,但是當我設置一個cronjob以指定的時間間隔運行它時,我遇到以下錯誤:Buildfile:build.xml不存在! - Android應用程序與螞蟻+ cronjob

Buildfile:build.xml不存在!

#!/bin/sh 

API_TOKEN="" 
TEAM_TOKEN="" 
NOTES=$(<Release.txt) 
APP_NAME="MainActivity-release.apk" 

#Reset git 
echo resetting 
git reset --hard 

echo pull latest 
git pull 

echo configure for build 
android update project -p . 

echo build api 
ant release 

/usr/bin/curl "http://testflightapp.com/api/builds.json " -F [email protected]"bin/$APP_NAME" -F api_token="$API_TOKEN" -F team_token="$TEAM_TOKEN" -F notes="$NOTES" -# 

我搬到這個shell腳本文件到我的主目錄和使用

cd ~/Documents/workspace/AutomatedAndroidApp更改目錄,然後手動嘗試將腳本和它的工作。然而,當我用cronjob運行它時,我又遇到了同樣的錯誤。

我也試圖與

ant -file ~/Documents/workspace/AutomatedAndroidapp/build.xml 

設置螞蟻-file路徑,但沒有運氣。我從來沒有在今天之前使用過ant來構建我的應用程序,因爲我一直在Eclipse中使用這些工具,所以我有點迷路了,任何幫助都將不勝感激!

+1

檢查用戶和env var可用於運行cron作業的用戶 – ben75

回答

1

正如@ ben75所建議的,這似乎是cronjob用戶與您用於手動執行它的用戶帳戶不同的問題。因此,~將解析爲錯誤的用戶主目錄。改爲使用完整/絕對路徑,並將其傳遞給螞蟻與-file開關。

+0

今天將嘗試建議!謝謝 – Jerry

+0

謝謝你們!你們都指出了我正確的方向,我能夠得到它修復:)用戶是一樣的,但PATH變量沒有被設置,它也從錯誤的目錄執行。 – Jerry

+0

很高興你回到了正軌! – joescii