2013-02-06 3 views
3

headless Linux 빌드 서버에서 Android SDK와 함께 Jenkins 서버를 설정했습니다. 나는 전형적인 "android create project ..."명령을 통해 안드로이드 프로젝트를 만든다.Android Jenkins 빌드 - 디버그 "target"이 프로젝트 오류에 존재하지 않습니다.

새 프로젝트로 "cd"한 후 명령 줄에서 jenkins 사용자로 "ant clean debug"를 수행 할 수 있습니다. 내 젠킨스 작업 공간 디렉토리에서이 작업을 실행하고 (.jenkins/작업/< 프로젝트 이름 >) : 젠킨스 작업이 나는 대상 "디버그"프로젝트에 존재하지 않는 얻을 빌드 그러나

# su jenkins 
$ ant clean debug 
.... successful .... 

, "프로젝트 이름 "오류

내 안드로이드 SDK 디렉토리에 sdk.dir 변수를 설정, 그래서 같은 젠킨스 로그에서 명령을 실행 : 나는 전체 안드로이드 SDK 폴더에 777 내 권한을 설정 한

$ ant -Dsdk.dir=/opt/java/android clean debug 

:

# chmod -R 777 /usr/java/android/android-sdk 

제가 누락 된 부분이있을 수 있습니다. 명령이 명령 행에서 실행되지만 Jenkins 작업으로 실패하는 이유는 무엇입니까?

감사합니다.

답변

0

몇 일 간의 좌절감과 궁금증을 감안할 때 프로젝트를 삭제하고 동일한 설정으로 프로젝트를 다시 만들면 문제가 해결된다는 것이 밝혀졌습니다. 그 동안 몇 가지 더 많은 일자리를 창출하고 삭제했으며, 때로는 위에서 언급 한 오류가있는 경우도 있고 그렇지 않은 경우도 있습니다. 욥 (편지를위한 편지)과 똑같은 설정으로도, 때때로 작동하고 그렇지 않은 경우에도 작동합니다. 죄송합니다.이 문제를 해결하는 방법, 작업을 삭제하는 방법, 다시 작성한 후 다시 시도하는 방법을 모릅니다.

행운을 빕니다!

2

젠킨스가 시도하는 동일한 위치에서 명령 줄 빌드를 실행하고 있습니까?

더블 당신이 수동으로 명령 줄에서 일을 실행하는 경우와 같은 프로젝트 파일이 있는지 확인하기 위해

.jenkins/workspace/<project-name> 

디렉토리를 확인합니다.

+0

예, 원래 질문에서이를 지금 업데이트 할 것이라고 언급 했어야합니다. 모든 명령은 .jenkins/workspace/ ... – ossys

+0

에서 실행되었습니다. 프로젝트에 여러 build.xml 파일이 있습니까? – Shellum

+0

아니, 그냥 명령 줄을 사용하여 만든 표준 안드로이드 프로젝트 ... 나는 2.8 플러그인이 있습니다. 또한 "Create Android build files"빌드 단계를 추가하면 즉시 " FATAL : 문자열 인덱스가 범위를 벗어났습니다. -1 java.lang.StringIndexOutOfBoundsException"예외가 발생하고 빌드가 즉시 종료되어 종료됩니다. 이 플러그인이 불안정한 버전입니까? – ossys

0

같은 문제가 있습니다. 그러나 잠시 동안 내 머리를 아프게하면 문제를 해결할 수있었습니다. 따라서 명령 행에서 ant target을 실행하려면 "ant target name"(예 : ant debug)을 사용해야합니다. 그러나 jenkin으로 같은 타겟을 실행하려면 개미가없는 타겟 이름 만 사용해야합니다 (예 : 디버그).

이유가 확실하지 않습니다. 그러나 이것은 나를 위해 문제를 해결했다.

관련 문제