Tip iOS #33 – Risolvere l’errore: “An error occurred uploading to the iTunes Store” [AGGIORNATO]

iOSBuongiorno a tutti,

se avete effettuato l’aggiornamento Java 2012-001 pubblicato qualche giorno fa da Apple e che risolve una grave vulnerabilità in proposito di un trojan (il famoso flashback di cui si è parlato in questi giorni e che pare abbia reso circa 600.000 Mac degli zombie) ed avete provato ad effettuare l’invio del binario di un’applicazione ad iTunes Center (tramite il comando Archive di XCode o tramite l’Application Loader, molto probabilmente al momento dell’invio vi siete ritrovati come risultato il seguente errore criptico: An error occurred uploading to the iTunes Store.

Verificando tra i log di sistema ed in particolare quello situato in /var/log/system.log, è possibile leggere il seguente messaggio di errore:

Apr  6 00:33:21 host-001 Application Loader[47861]:  Error:
    Java 1.5, 1.6, or 1.7 is required. Currently, java is the default java version. Please upgrade.

 

Questo anche se l’aggiornamento di cui sopra porta la JVM (Java Virtual Machine) alla versione 1.6.0-31 quindi valida secondo quando indicato il messaggio di errore.

Il problema sembra dipendere dal fatto che Apple abbia inserito il controllo sulla JVM in hardcode all’interno delle applicazioni per la pubblicazione ed in particolar modo sembra che vi sia un path specifico che viene ricercato.

La soluzione, riportata di seguito, è reperibile all’interno di questa discussione del forum degli sviluppatori: https://devforums.apple.com/message/643260#643260

Essa consiste nell’aprire il terminale ed inserire le seguenti righe di comando:

cd /System/Library/Frameworks/JavaVM.framework/Versions
sudo ln -s CurrentJDK /System/Library/Frameworks/JavaVM.framework/Versions/1.5
sudo ln -s CurrentJDK /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0

 

In pratica questi comandi non fanno altro che creare le cartelle 1.5 ed 1.5.0 in modo che XCode possa reperirne il contenuto e proseguire quindi con la pubblicazione.

Una volta eseguiti i comandi da terminale si potrà ritornare a pubblicare le applicazioni su AppStore senza difficoltà.

[AGGIORNAMENTO]

Questa notte Apple ha pubblicato un nuovo aggiornamento Java per Lion: Java 2012-002 disponibile tramite aggiornamento software. Questo aggiornamento dovrebbe correggere alcuni bug dell’aggiornamento precedente, non si sa se risolve anche il problema indicato in questo articolo. In ogni caso si consiglia vivamente di aggiornare il Mac proprio per tappare le falle di sicurezza.

[AGGIORNAMENTO N. 2]

Dopo alcune verifiche sembra che questo aggiornamento risolva anche il problema delle pubblicazioni su iTunesConnect. Si spera che, visto il ritardo con cui la JVM viene rilasciata rispetto alle altre piattaforme, in futuro i rilasci vengano maggiormente testati. Meglio ancora, sarebbe se java venisse eliminato da fasi così critiche, come la pubblicazione, da XCode.

Arrivederci al prossimo suggerimento,

Roberto S.

 



Related Posts Plugin for WordPress, Blogger...

Questa voce è stata pubblicata in iOS Tips e contrassegnata con , , , , , , , . Contrassegna il permalink.
Wordpress Code Snippet by Allan Collins