Jenkins арналған Android жобасын құрастыру кезінде осы ZipException қалай түзетуге болады?

Жақында мен Jenkins машинасындағы Android SDK-ді rev13-дан rev13-ге дейін жаңарттым және rev14-де жасалған өзгерістерге сай болу үшін build.xml ішіндегі кейбір реттелетін элементтерімізді қайта жасауға тура келді. Мұны менің жұмыс орныма айналдырды және барлық нәрсені шабдалы деп күтуде тексердім. Оның орнына, құрастыру төмендегі қателіктермен сәтсіз аяқталады:

-obfuscate:

-dex:
      [dex] Converting compiled files and external libraries into /export/home/hudson/jobs/path/to/the/file/classes.dex...
       [dx] 
       [dx] UNEXPECTED TOP-LEVEL EXCEPTION:
       [dx] java.util.zip.ZipException: error in opening zip file
       [dx]     at java.util.zip.ZipFile.open(Native Method)    
       [dx]     at java.util.zip.ZipFile.(ZipFile.java:127)
       [dx]     at java.util.zip.ZipFile.(ZipFile.java:143)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processArchive(ClassPathOpener.java:206)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:131)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:109)
       [dx]     at com.android.dx.command.dexer.Main.processOne(Main.java:418)
       [dx]     at com.android.dx.command.dexer.Main.processAllFiles(Main.java:329)
       [dx]     at com.android.dx.command.dexer.Main.run(Main.java:206)
       [dx]     at com.android.dx.command.dexer.Main.main(Main.java:174)
       [dx]     at com.android.dx.command.Main.main(Main.java:95)
       [dx] 1 error; aborting

BUILD FAILED
/opt/android-sdk-linux/tools/ant/build.xml:729: The following error occurred while executing this line:
/opt/android-sdk-linux/tools/ant/build.xml:731: The following error occurred while executing this line:
/opt/android-sdk-linux/tools/ant/build.xml:743: The following error occurred while executing this line:
/opt/android-sdk-linux/tools/ant/build.xml:249: null returned: 1

Мен Jenkins пайдаланушысы ретінде Jenkins жұмыс кеңістігі директориясымен бірдей Android SDK, Ant және Jenkins қолданатын JDK-мен тікелей жұмыс істей отырып, ant1/code> бағдарламасын іске қосу арқылы сәтті құрылмақпын. Мен барлық тізбектер мен қосқыштар бірдей орнатылғанына көз жеткізу үшін Дженкинс журналынан орындау сызығын қиып-қояды. Яғни, Дженкинстің құрылысты қалай басқарып жатқаны туралы мәселе осы мәселе.

Мен Дженкинс қоршаған ортаны құрастырудың «қабығы exec» қадамы ретінде қалдырды, мен LD_LIBRARY_PATH айнымалысы орнатылғанын көрдім.

LD_LIBRARY_PATH=/u0/jdk1.6.0_29/jre/lib/i386/server:/u0/jdk1.6.0_29/jre/lib/i386:/u0/jdk1.6.0_29/jre/../lib/i386

Мен осы мәнді өзімнің терминалға қойып, қабатты қабықшаны іске қосып, Дженкинстің жұмысын істегендей істемейді. Ах-га!

Мәселе мынада, LD_LIBRARY_PATH айнымалы мәнін қалай алуға болатындығын білмеймін немесе бұл мәселеге себеп болмайтын нәрсені көрсете алмаймын. Ол Jenkins пайдаланушының ортасында орнатылмаған және оған Jenkins конфигурациясында сілтеме болуы мүмкін ештеңе таба алмаймын. Жаңартылған JDK-ны орнатқанымда және JAVA мәнін /etc/defaults/jenkins -де жаңартқан кезде ол өзгерді, себебі ол анық байланысты, бірақ, өкінішке орай, кез келген жақсартады.

Мен идеялардан тысмын. Кез келген көмек?

7

2 жауаптар

Мәселе бұл Jenkins матрицасының құрастыру функциясын (өте жақсы мүмкіндік, айтпақшы) пайдалануға мүмкіндік беретін кейбір конфигурацияларға байланысты кітапхана classes.jar файлын қоймаған онда ата-аналық жоба оны табуды күтіп, қате жіберді. Бұл негізінен «файл табылған жоқ» деп айтылмаған. LD_LIBRARY_PATH дегенмен онымен не істеу керек екендігін әлі де білмейміз.

Менің әріптесім негізгі жоба мен кітапхана үшін build.xml файлын tweaked, қайда шығарылатын файлдар қай жерде аяқталатыны туралы келіседі, ал енді бәрі қайтадан жұмыс істейді, біздің рельефімізге көп.

1
қосылды

Менде бірдей мәселе болды. Мен Дженкинстің үстінде тұрдым, ал банкада либоға дұрыс көшірілмеді.

Мен Jenkins Copy Artifacts Plugin-ды жалпы кітапхана банкісін тартып, оны libs/көшіру үшін қолданамын. Мен «Flatten Directories» параметрін пайдаланбағанымда қате алдым. Бірде любила каталогында кәстрөл болғанда, бәрі қалыпты болды.

Бұл біреуді бас ауырып қалды деп үміттенемін!

0
қосылды
Бұл, сөзсіз, қате табылған банктерге қатысты.
қосылды автор Argyle, көзі