Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

build issue #178

Closed
Bubu opened this issue Aug 7, 2019 · 14 comments
Closed

build issue #178

Bubu opened this issue Aug 7, 2019 · 14 comments

Comments

@Bubu
Copy link

Bubu commented Aug 7, 2019

I'm trying to add the new 1.5.5 version to f-droid but the project fails to build for me with the following error:

[ERROR] Failed to execute goal com.jayway.maven.plugins.android.generation2:android-maven-plugin:3.6.0:generate-sources (default-generate-sources) on project brouter-routing-app: Execution default-generate-sources of goal com.jayway.maven.plugins.android.generation2:android-maven-plugin:3.6.0:generate-sources failed: A required class was missing while executing com.jayway.maven.plugins.android.generation2:android-maven-plugin:3.6.0:generate-sources: Lorg/sonatype/aether/RepositorySystem;
[ERROR] -----------------------------------------------------
[ERROR] realm =    extension>com.jayway.maven.plugins.android.generation2:android-maven-plugin:3.6.0
[ERROR] strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy
[ERROR] urls[0] = file:/home/mhoffmann/.m2/repository/com/jayway/maven/plugins/android/generation2/android-maven-plugin/3.6.0/android-maven-plugin-3.6.0.jar
[ERROR] urls[1] = file:/home/mhoffmann/.m2/repository/com/android/tools/build/builder/0.4/builder-0.4.jar
[ERROR] urls[2] = file:/home/mhoffmann/.m2/repository/com/android/tools/sdklib/22.0/sdklib-22.0.jar
[ERROR] urls[3] = file:/home/mhoffmann/.m2/repository/org/apache/httpcomponents/httpclient/4.1.1/httpclient-4.1.1.jar
[ERROR] urls[4] = file:/home/mhoffmann/.m2/repository/org/apache/httpcomponents/httpcore/4.1/httpcore-4.1.jar
[ERROR] urls[5] = file:/home/mhoffmann/.m2/repository/commons-logging/commons-logging/1.1.1/commons-logging-1.1.1.jar
[ERROR] urls[6] = file:/home/mhoffmann/.m2/repository/commons-codec/commons-codec/1.4/commons-codec-1.4.jar
[ERROR] urls[7] = file:/home/mhoffmann/.m2/repository/org/apache/httpcomponents/httpmime/4.1/httpmime-4.1.jar
[ERROR] urls[8] = file:/home/mhoffmann/.m2/repository/com/android/tools/layoutlib/layoutlib-api/22.0/layoutlib-api-22.0.jar
[ERROR] urls[9] = file:/home/mhoffmann/.m2/repository/com/android/tools/dvlib/22.0/dvlib-22.0.jar
[ERROR] urls[10] = file:/home/mhoffmann/.m2/repository/org/apache/commons/commons-compress/1.0/commons-compress-1.0.jar
[ERROR] urls[11] = file:/home/mhoffmann/.m2/repository/com/android/tools/build/builder-test-api/0.4/builder-test-api-0.4.jar
[ERROR] urls[12] = file:/home/mhoffmann/.m2/repository/com/android/tools/build/builder-model/0.4/builder-model-0.4.jar
[ERROR] urls[13] = file:/home/mhoffmann/.m2/repository/com/android/tools/common/22.0/common-22.0.jar
[ERROR] urls[14] = file:/home/mhoffmann/.m2/repository/com/google/guava/guava/13.0.1/guava-13.0.1.jar
[ERROR] urls[15] = file:/home/mhoffmann/.m2/repository/com/android/tools/sdk-common/22.0/sdk-common-22.0.jar
[ERROR] urls[16] = file:/home/mhoffmann/.m2/repository/com/android/tools/ddms/ddmlib/22.0/ddmlib-22.0.jar
[ERROR] urls[17] = file:/home/mhoffmann/.m2/repository/net/sf/kxml/kxml2/2.3.0/kxml2-2.3.0.jar
[ERROR] urls[18] = file:/home/mhoffmann/.m2/repository/com/android/tools/build/manifest-merger/22.0/manifest-merger-22.0.jar
[ERROR] urls[19] = file:/home/mhoffmann/.m2/repository/org/bouncycastle/bcpkix-jdk15on/1.48/bcpkix-jdk15on-1.48.jar
[ERROR] urls[20] = file:/home/mhoffmann/.m2/repository/org/bouncycastle/bcprov-jdk15on/1.48/bcprov-jdk15on-1.48.jar
[ERROR] urls[21] = file:/home/mhoffmann/.m2/repository/org/sonatype/sisu/sisu-inject-bean/2.1.1/sisu-inject-bean-2.1.1.jar
[ERROR] urls[22] = file:/home/mhoffmann/.m2/repository/org/sonatype/sisu/sisu-guice/2.9.4/sisu-guice-2.9.4-no_aop.jar
[ERROR] urls[23] = file:/home/mhoffmann/.m2/repository/org/codehaus/plexus/plexus-interpolation/1.14/plexus-interpolation-1.14.jar
[ERROR] urls[24] = file:/home/mhoffmann/.m2/repository/org/codehaus/plexus/plexus-component-annotations/1.5.5/plexus-component-annotations-1.5.5.jar
[ERROR] urls[25] = file:/home/mhoffmann/.m2/repository/org/sonatype/plexus/plexus-sec-dispatcher/1.3/plexus-sec-dispatcher-1.3.jar
[ERROR] urls[26] = file:/home/mhoffmann/.m2/repository/org/sonatype/plexus/plexus-cipher/1.4/plexus-cipher-1.4.jar
[ERROR] urls[27] = file:/home/mhoffmann/.m2/repository/org/apache/maven/maven-archiver/2.5/maven-archiver-2.5.jar
[ERROR] urls[28] = file:/home/mhoffmann/.m2/repository/emma/emma/2.1.5320/emma-2.1.5320.jar
[ERROR] urls[29] = file:/home/mhoffmann/.m2/repository/org/codehaus/plexus/plexus-archiver/2.3/plexus-archiver-2.3.jar
[ERROR] urls[30] = file:/home/mhoffmann/.m2/repository/junit/junit/3.8.1/junit-3.8.1.jar
[ERROR] urls[31] = file:/home/mhoffmann/.m2/repository/org/codehaus/plexus/plexus-io/2.0.6/plexus-io-2.0.6.jar
[ERROR] urls[32] = file:/home/mhoffmann/.m2/repository/org/codehaus/plexus/plexus-utils/3.0.10/plexus-utils-3.0.10.jar
[ERROR] urls[33] = file:/home/mhoffmann/.m2/repository/commons-jxpath/commons-jxpath/1.3/commons-jxpath-1.3.jar
[ERROR] urls[34] = file:/home/mhoffmann/.m2/repository/commons-io/commons-io/2.4/commons-io-2.4.jar
[ERROR] urls[35] = file:/home/mhoffmann/.m2/repository/org/ow2/asm/asm/4.1/asm-4.1.jar
[ERROR] urls[36] = file:/home/mhoffmann/.m2/repository/commons-lang/commons-lang/2.6/commons-lang-2.6.jar
[ERROR] urls[37] = file:/home/mhoffmann/.m2/repository/org/sonatype/aether/aether-util/1.13.1/aether-util-1.13.1.jar
[ERROR] urls[38] = file:/home/mhoffmann/.m2/repository/com/github/rtyley/android-screenshot-paparazzo/1.9/android-screenshot-paparazzo-1.9.jar
[ERROR] urls[39] = file:/home/mhoffmann/.m2/repository/com/madgag/animated-gif-lib/1.0/animated-gif-lib-1.0.jar
[ERROR] urls[40] = file:/home/mhoffmann/.m2/repository/com/github/rtyley/android-screenshot-celebrity/1.8/android-screenshot-celebrity-1.8.jar
[ERROR] Number of foreign imports: 1
[ERROR] import: Entry[import  from realm ClassRealm[maven.api, parent: null]]
[ERROR] 

The only thing I noticed is that the readme says the project should be built with java 6. I don't think it's feasible to get java 6 on any recent linux distribution. Is that still a requirement? Would that cause the above error?

@Bubu
Copy link
Author

Bubu commented Aug 7, 2019

F-Droid merge request: https://gitlab.com/fdroid/fdroiddata/merge_requests/5183

Maybe my environment is just broken and it works in the f-droid env.

@abrensch
Copy link
Owner

abrensch commented Aug 8, 2019

I had similar issue trying to build on ubuntu 18.0.4 lts

Found this here and I can confirm tha switching the plugin from 3.6 to 3.8 (in the master-pom ) solves that issue.

https://stackoverflow.com/questions/19174392/failed-to-execute-goal-com-jayway-maven-plugins-android-generation2

However, I still did'nt succeed (plattform api level xy not available...)

Which Android API you ant to use for the F-Droid build? 10 or 28 ?

28 is wired in the github-sources, but if you are not forced to a newer API by the Deployment-plattform you should change it back to 10

@Bubu
Copy link
Author

Bubu commented Aug 8, 2019

I now get a different error, regardless of platform 28 or 10

[INFO] brouter-routing-app ................................ FAILURE [  0.773 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  13.564 s
[INFO] Finished at: 2019-08-08T11:58:49+02:00
[INFO] ------------------------------------------------------------------------
Exception in thread "pool-1-thread-1" java.lang.NoClassDefFoundError: org/eclipse/aether/spi/connector/Transfer$State
	at org.eclipse.aether.connector.wagon.WagonRepositoryConnector$GetTask.run(WagonRepositoryConnector.java:608)
	at org.eclipse.aether.util.concurrency.RunnableErrorForwarder$1.run(RunnableErrorForwarder.java:67)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at java.lang.Thread.run(Thread.java:748)
---------------------------------------------------
Caused by: java.lang.ClassNotFoundException: org.eclipse.aether.spi.connector.Transfer$State
	at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:50)
	at org.codehaus.plexus.classworlds.realm.ClassRealm.unsynchronizedLoadClass(ClassRealm.java:271)
	at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:247)
	at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:239)
	... 5 more

Edit: Seems to be another maven incompatibility? https://stackoverflow.com/questions/28717739/exception-in-thread-pool-1-thread-1-java-lang-noclassdeffounderror-org-eclips

I'm running Apache Maven 3.6.0

@licaon-kter
Copy link

Seeing the same:

btools.routingapp_38.zip

@licaon-kter
Copy link

@abrensch Any news?

@EssBee59
Copy link
Collaborator

EssBee59 commented Mar 23, 2020

Hello,
I had a look at this page https://stackoverflow.com/questions/10610564/android-with-maven-apk-unknown
And made a change in pom.xml for "groupId>com.jayway.maven.plugins.android.generation2:"
see attachement
It solved the error above. After solving the next Problem with keystore the Build was successfull
Ess Bee
pom.xml.txt

@Bubu
Copy link
Author

Bubu commented Mar 26, 2020

@EssBee59 Thanks, that fixes the problem I had!

@EssBee59
Copy link
Collaborator

EssBee59 commented Mar 26, 2020 via email

@abrensch
Copy link
Owner

thanx for all your work on the subject.

I'm just trying to work that out. Also looking at duese's PR ( #230 )

I did not yet succeed compiling the APK with duese's branch. But that may be just me, I'm reallynot good ´with these things.

Did I get it right that I have to go either with android-maven plugin 4.6.0 (duese's PR) or 3.9.0-rc.2 (EssBee's patch) ?

And do I have, in any case, upgrade to maven 3.6.3 ?

And can I still keep Java-6 compatibility, or do I have to drop that?

Dependency-hell....

Is there a cookbook anaywhere on how to build from a naked ubuntu (server system without graphical interface) ?

Need more time and maybe assistence. Will come back in the subject soon.

regards, Arndt

@EssBee59
Copy link
Collaborator

Helo,

I am using MAVEN 3.6.3 under Windows 10
Further sdk 28
and start Generation with this command:
mvn clean install -Dandroid.sdk.path=D:\JAVA_ANDROID\SDK_28 -DskipTests -Dmaven.javadoc.skip=true

further variables set: (I had set before for gradlew / osmand gen)
ANDROID_HOME=D:\JAVA_ANDROID\SDK_28
ANDROID_NDK=D:\JAVA_ANDROID\android-ndk-r21
ANDROID_SDK=D:\JAVA_ANDROID\SDK_28

Regards

@Bubu
Copy link
Author

Bubu commented Mar 28, 2020

I'm running the builds on Ubuntu 18.04 with Apache Maven 3.6.0. It works with the upgraded 3.9.0-rc.2 plugin.

@ntruchsess
Copy link
Contributor

ntruchsess commented Jan 28, 2021

I'm on Ubuntu 20.04 LTS
distributions maven is version 3.6.3
android-maven plugin 4.6.0 (as of duese's PR)
-> build fails with default-jdk (jdk-11), due to android-plugin being dependent on java-ee modules (removed as of jdk-11)
Solution:
sudo apt-get install openjdk-8-jdk
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/
export ANDROID_HOME=your_path_to_android-sdk
adjust keystore-settings in brouter-routing-app/pom.xml
and mvn install runs just fine.

@zod
Copy link
Collaborator

zod commented Nov 20, 2021

We switched the build system from maven to gradle. Can you check if you can compile the current development version for F-Droid?

@licaon-kter
Copy link

licaon-kter commented Apr 20, 2022

/close this 1.6.3 is live

@zod zod closed this as completed Apr 20, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants