“Risorsa non trovato” quando si costruisce Android sotto IntelliJ 9,0 Maia beta pubblica

StackOverflow https://stackoverflow.com/questions/1690696

  •  18-09-2019
  •  | 
  •  

Domanda

Sto cercando di porto un app da Eclipse per IntelliJ. L'applicazione si basa bene ma non riesce a funzionare correttamente.

Ecco una traccia dello stack parziale che ricevo:

ERROR/AndroidRuntime(957):             
java.io.IOException: Resource not found: "org/joda/time/tz/data/ZoneInfoMap" ClassLoader: dalvik.system.PathClassLoader@43761190
        at org.joda.time.tz.ZoneInfoProvider.openResource(ZoneInfoProvider.java:209)
        at org.joda.time.tz.ZoneInfoProvider.<init>(ZoneInfoProvider.java:123)
        at org.joda.time.tz.ZoneInfoProvider.<init>(ZoneInfoProvider.java:82)
        at org.joda.time.DateTimeZone.getDefaultProvider(DateTimeZone.java:439)
        at org.joda.time.DateTimeZone.setProvider0(DateTimeZone.java:393)
        at org.joda.time.DateTimeZone.<clinit>(DateTimeZone.java:114)
        at org.joda.time.chrono.GregorianChronology.<clinit>(GregorianChronology.java:71)
        at org.joda.time.chrono.ISOChronology.<clinit>(ISOChronology.java:66)
        at org.joda.time.base.BaseDateTime.<init>(BaseDateTime.java:97)
        at org.joda.time.DateTime.<init>(DateTime.java:120)

Per qualche ragione, l'applicazione non è in grado di trovare le risorse Joda-time, anche se sono specificate nel percorso di generazione del modulo. Questi sono gli stessi jarfiles utilizzato dalla versione eclisse della app.

alt text http://img.skitch.com/20091106-pgqujbb5eaeqc2wfiqc2c1p39a.png

L'APK costruita dallo strumento IntelliJ è di circa il 20% più piccolo rispetto a quello costruito da Eclipse, ma io non so perché.

Qualche idea di cosa potrebbe essere il problema?

UPDATE:

Ho parlato con romain e XAV ieri, e sembra che il problema è che non è IntelliJ bundling risorse nella apk. Evidentemente aapt fa un approccio a due passaggi - prima che raggruppa tutti i file di classe in un file .dex, e poi si raggruppa tutti i file di risorse separatamente nel livello superiore del file apk. E 'questo secondo passaggio che IntelliJ sembra mancare.

Per risolvere il problema, hanno suggerito che io unjar tutti i file di risorse dal vaso Joda-tempo, e li metto nella mia directory src. L'aspettativa era che IntelliJ avrebbe poi li fascio nella mia apk come se fossero parte della mia propria fonte, risolvendo così il problema. Tuttavia, quando ho fatto questo, IntelliJ ignorato quei file del tutto quando ha creato l'apk.

Non so perché. C'è forse una soluzione che posso usare per ottenere i file di risorse Joda-time nel mio apk che non è terribilmente scomodo ogni volta che voglio costruire?

È stato utile?

Soluzione

Questa è una versione piuttosto vecchia di IntelliJ a questo punto. 10.5 sembra risolvere tutti i miei problemi con dev Android

Altri suggerimenti

Non è il tuo problema l'ambito delle dipendenze? Se sono utilizzati solo per la compilazione, non è GARANTITA a lavorare a runtime è?

Non sono un utente di IJ me stesso, ma dal vostro screenshot questa è la mia ipotesi. Sarebbe anche spiegare perché la dimensione del pacchetto di Android è inferiore all'80%.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top