You're right, changing scope to "provided" helped. Thank you very much. Best regards, Mariusz Pluciński
Wiadomość napisana przez Manfred Moser w dniu 3 kwi 2012, o godz. 16:28: > You probably forget to give the android jar the provided scope. In general > I would suggest to ask Android/Maven related questions on the Maven > Android Developers mailing list and read the documentation for the Android > Maven Plugin in the book Maven: The Complete Reference and on the website > > In general you will NOT need the core classes argument... unless you are > really supplying another core class implementation (why would you do that? > .. if you need something in java.* or javax.* that is not part of > Android..) which in general should be avoid imho... > > manfred > http://simpligility.com > > http://code.google.com/p/maven-android-plugin/ > http://groups.google.com/group/maven-android-developers > http://www.sonatype.com/books/mvnref-book/reference/android-dev.html > > On Tue, April 3, 2012 7:19 am, Mariusz Plucinski wrote: >> Hi all, >> >> I have another problem with Maven: Android plugins seems to call javac >> and/or dx incorrectly. >> >> After adding Android platform as dependency to Maven project, I am getting >> long message from dx that I am trying to provide own implementation for >> core libraries, and that I should not do it. >> >> [INFO] trouble processing "java/nio/CharBuffer.class": >> [INFO] >> [INFO] Ill-advised or mistaken usage of a core class (java.* or javax.*) >> [INFO] when not building a core library. (…) >> >> I have read that this message appears when one tries to pass android.jar >> to dx (instead of passing it just to javac). As workaround, I have removed >> dependency on Android, and added path to android.jar into >> maven-compiler-plugin configuration: >> <compilerArguments> >> >> <classpath>${env.ANDROID_HOME}/platforms/android-8/android.jar</classpath> >> </compilerArguments> >> >> This did the trick and allowed me to build working application. But today, >> another problem appeared: as I've probably completely overwritten >> "-classpath" parameter of javac, maven does not passing it paths to other >> dependencies. In result, I see lot of "package (…) does not exist" and >> "can not find symbol (…)" errors. They are saying about libraries which >> are defined as dependencies. >> >> I was trying to extend "classpath" parameter by adding paths to my >> dependencies manually, but surprisingly, it does not work (and I prefer to >> force maven to do this). Removing "classpath" element make javac >> complaining that "package os.android does not exists". And adding android >> to dependencies moves me to the beginning - dx complains about core >> classes. >> >> Error message informs about "--core-classes" argument which may be passed >> to dx, but may result in "pain, suffering, grief, and lamentation". I've >> checked that maven-android may be configured to pass it. Do you think this >> is safe to use it? I suppose this message should appear when using >> libraries incompatible with Android (as defining core classes is forbidden >> on this platform). If I use the "--core-classes" switch, I will not be >> informed about incompatible libraries, which may cause many troubles in >> the future. >> >> I have no idea how to solve it. I was trying to compile with both >> android.jar from Maven Central repository, and with android.jar from SDK - >> both causes the same error. >> >> Is there any other way to do it, instead of passing "--core-classes" >> argument? >> >> Best regards, >> Mariusz Pluciñski >> >> >> >> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: [email protected] >> For additional commands, e-mail: [email protected] >> > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] >
