Java Question Compilier - UNEXPECTED TOP-LEVEL EXCEPTION

BobsYourUncle

Member
Licensed User
Longtime User
Hi All,

Both the Net library and my own library reference an external jar. The jar is mime4j.

Because both libraries are referencing the same library, the compilier/dexer is adding the same class name twice and causing a problem. Here's the error message:-

B4X:
Compiling generated Java code.          1.21
Convert byte code - optimized dex.      Error
UNEXPECTED TOP-LEVEL EXCEPTION:
java.lang.IllegalArgumentException: already added: Lorg/apache/james/mime4j/codec/Base64OutputStream;
   at com.android.dx.dex.file.ClassDefsSection.add(ClassDefsSection.java:123)
   at com.android.dx.dex.file.DexFile.add(DexFile.java:143)
   at com.android.dx.command.dexer.Main.processClass(Main.java:372)
   at com.android.dx.command.dexer.Main.processFileBytes(Main.java:346)
   at com.android.dx.command.dexer.Main.access$400(Main.java:59)
   at com.android.dx.command.dexer.Main$1.processFileBytes(Main.java:294)
   at com.android.dx.cf.direct.ClassPathOpener.processArchive(ClassPathOpener.java:244)
   at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:130)
   at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:108)
   at com.android.dx.command.dexer.Main.processOne(Main.java:313)
   at com.android.dx.command.dexer.Main.processAllFiles(Main.java:233)
   at com.android.dx.command.dexer.Main.run(Main.java:185)
   at com.android.dx.command.dexer.Main.main(Main.java:166)
   at com.android.dx.command.Main.main(Main.java:90)
1 error; aborting
   Standard dexer.

Does anyone know how to solve this problem? Any help would be really appreciated.

Kind regards,
BobsYourUncle
 

BobsYourUncle

Member
Licensed User
Longtime User
Thanks Erel.
How do I exclude or delete the conflicting Base64OutputStream class from my library jar?
 
Top