It is currently 20 May 2025, 09:36
   
Text Size

Working out the multi-module maven setup

Post MTG Forge Related Programming Questions Here

Moderators: timmermac, Blacksmith, KrazyTheFox, Agetian, friarsol, CCGHQ Admins

Re: Working out the multi-module maven setup

Postby Chris H. » 28 Feb 2014, 18:58

drdev wrote:@Chris - Looks like it's not able to find the Skin files anymore, likely because they were moved but the constants for the paths in the code weren't updated.

That said, I do need to eliminate that loophole where there's a stack overflow if the skins can't be found. It should die a little more gracefully than that.
 
Thank you for looking into this. :D
User avatar
Chris H.
Forge Moderator
 
Posts: 6320
Joined: 04 Nov 2008, 12:11
Location: Mac OS X Yosemite
Has thanked: 644 times
Been thanked: 643 times

Re: Working out the multi-module maven setup

Postby drdev » 01 Mar 2014, 13:35

I fixed it so it throws an exception instead of causing a stack overflow.

That said, I'm really confused and concerned about all these changes. teferi, I'm very concerned that you committed such broad changes without even testing that it didn't completely break the project. You should never commit changes without at least testing that the application still can run. Or am I doing something wrong and it's running fine for you? Also, have you tried a Maven build, and does that work?

Also, forge-m-desktop is failing to run due to missing references at runtime. I haven't even tried forge-m-android, but I imagine it won't work either.

teferi, please fix this, because right now you've completely halted development, and I was really looking forward to having time to work on Forge today.
drdev
Programmer
 
Posts: 1958
Joined: 27 Jul 2013, 02:07
Has thanked: 189 times
Been thanked: 565 times

Re: Working out the multi-module maven setup

Postby swordshine » 01 Mar 2014, 15:44

I can't start Forge in eclipse, either. Am I missing something? I think my local version is working perfectly before the recent maven changes.
swordshine
 
Posts: 682
Joined: 11 Jul 2010, 02:37
Has thanked: 116 times
Been thanked: 87 times

Re: Working out the multi-module maven setup

Postby Chris H. » 01 Mar 2014, 16:33

Starting in line numbered 1270 in forge-gui.src.main.java.forge.gui.toolbox.FSkin.java we have the following:

Code: Select all
private static final String
    FILE_SKINS_DIR = "res/skins/",
    FILE_ICON_SPRITE = "sprite_icons.png",
    FILE_FOIL_SPRITE = "sprite_foils.png",
    FILE_OLD_FOIL_SPRITE = "sprite_old_foils.png",
    FILE_AVATAR_SPRITE = "sprite_avatars.png",
    FILE_FONT = "font1.ttf",
    FILE_SPLASH = "bg_splash.png",
    FILE_MATCH_BG = "bg_match.jpg",
    FILE_TEXTURE_BG = "bg_texture.jpg",
    DEFAULT_DIR = FILE_SKINS_DIR + "default/";
 
Changing the FILE_SKINS_DIR might or might not work.
User avatar
Chris H.
Forge Moderator
 
Posts: 6320
Joined: 04 Nov 2008, 12:11
Location: Mac OS X Yosemite
Has thanked: 644 times
Been thanked: 643 times

Re: Working out the multi-module maven setup

Postby Chris H. » 01 Mar 2014, 16:46

I tried to do a local build without a deploy to cardforge using this Maven goal:

Code: Select all
-U -B clean install -P windows-linux -DskipTests=true -Darguments="-DskipTests=true"
 
I got a Maven build failure.

Code: Select all
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ forge-m-android ---
[INFO]
[INFO] --- maven-enforcer-plugin:1.1:enforce (default) @ forge-m-android ---
[WARNING] Rule 2: org.apache.maven.plugins.enforcer.RequirePluginVersions failed with message:
Cannot find lifecycle mapping for packaging: 'apk'.
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] Forge Parent ...................................... SUCCESS [2.700s]
[INFO] Forge Core ........................................ SUCCESS [6.733s]
[INFO] Forge Game ........................................ SUCCESS [5.982s]
[INFO] Forge AI .......................................... SUCCESS [2.206s]
[INFO] Forge Net ......................................... SUCCESS [0.337s]
[INFO] Forge GUI ......................................... SUCCESS [12.319s]
[INFO] Forge Bundle ...................................... SUCCESS [1:06.183s]
[INFO] Forge Mobile Base ................................. SUCCESS [0.687s]
[INFO] Forge Mobile Android .............................. FAILURE [2.533s]
[INFO] Forge Mobile Desktop .............................. SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2:04.741s
[INFO] Finished at: Sat Mar 01 11:39:03 EST 2014
[INFO] Final Memory: 51M/240M
[INFO] ------------------------------------------------------------------------
[WARNING] The requested profile "windows-linux" could not be activated because it does not exist.
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-enforcer-plugin:1.1:enforce (default) on project forge-m-android: Some Enforcer rules have failed. Look above for specific messages explaining why the rule failed. -> [Help 1]
User avatar
Chris H.
Forge Moderator
 
Posts: 6320
Joined: 04 Nov 2008, 12:11
Location: Mac OS X Yosemite
Has thanked: 644 times
Been thanked: 643 times

Re: Working out the multi-module maven setup

Postby drdev » 01 Mar 2014, 17:00

Chris, changing it to what though? Those paths are relative to the project, which is forge-gui, not forge-bundle. I got around this in forge-m-desktop and forge-m-android by using a linked source to the res folder, but that strategy didn't work for forge-gui.

I'm still frusturated that this even got committed as is when it's obviously broken for everyone, and that we haven't heard from teferi in the last day since he did so. I sent him a PM, so hopefully he checks in with us soon.
drdev
Programmer
 
Posts: 1958
Joined: 27 Jul 2013, 02:07
Has thanked: 189 times
Been thanked: 565 times

Re: Working out the multi-module maven setup

Postby teferi » 01 Mar 2014, 20:38

Hello all,

Sorry about this.

On a clean checkout the project builds with the following command:
Code: Select all
mvn clean install -o
Code: Select all
[INFO] Reactor Summary:
[INFO]
[INFO] Forge Parent ...................................... SUCCESS [  0.270 s]
[INFO] Forge Core ........................................ SUCCESS [  2.248 s]
[INFO] Forge Game ........................................ SUCCESS [  2.336 s]
[INFO] Forge AI .......................................... SUCCESS [  0.828 s]
[INFO] Forge Net ......................................... SUCCESS [  0.109 s]
[INFO] Forge GUI ......................................... SUCCESS [  4.119 s]
[INFO] Forge Bundle ...................................... SUCCESS [ 22.822 s]
[INFO] Forge Mobile Base ................................. SUCCESS [  0.172 s]
[INFO] Forge Mobile Android .............................. SUCCESS [ 17.581 s]
[INFO] Forge Mobile Desktop .............................. SUCCESS [  1.950 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
I did test on the built application (launching forge.exe) and I could play the game. The res folder was accessible to the application.

I see you guys want to run the application from the gui module which proves to be problematic due to new File("res/...") invokations.

I'll replace the relative reference to the res folder to resource reference within the classpath to avoid this issue and make a module containing the res folder only so that it can be used as a dependency for forge-gui and forge-m-base.
teferi
 
Posts: 8
Joined: 12 Feb 2014, 19:47
Has thanked: 0 time
Been thanked: 6 times

Re: Working out the multi-module maven setup

Postby teferi » 01 Mar 2014, 23:00

I committed the changes which I hope will unblock the situation.
teferi
 
Posts: 8
Joined: 12 Feb 2014, 19:47
Has thanked: 0 time
Been thanked: 6 times

Re: Working out the multi-module maven setup

Postby Chris H. » 02 Mar 2014, 03:06

I had to delete the project and then check it out once again. I am now at the stage where I would do a File -> Import… -> Maven -> Existing Maven Projects and after selecting the entire list I see the following dialog.

How do I resolve these issues?
 
Attachments
Screen Shot.jpg
User avatar
Chris H.
Forge Moderator
 
Posts: 6320
Joined: 04 Nov 2008, 12:11
Location: Mac OS X Yosemite
Has thanked: 644 times
Been thanked: 643 times

Re: Working out the multi-module maven setup

Postby swordshine » 02 Mar 2014, 07:11

Got the same issue. I'm not able to solve the problem cuz I'm not a professional programmer. I just want to run/debug the Java application in Eclipse to implement unsupported cards. I change scripts during the test frequently. I don't want to build and launch something like forge.exe each time I change the scripts.
swordshine
 
Posts: 682
Joined: 11 Jul 2010, 02:37
Has thanked: 116 times
Been thanked: 87 times

Re: Working out the multi-module maven setup

Postby Agetian » 02 Mar 2014, 12:07

As of r25021, the project neither compiles nor runs for me in NetBeans. Trying to compile it yields the following error:

Code: Select all
cd /home/agetian/NetBeansProjects/trunk; JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64 /home/agetian/netbeans-7.4/java/maven/bin/mvn -DskipTests=true clean install
Scanning for projects...
Mar 02, 2014 4:06:16 PM org.sonatype.guice.bean.reflect.Logs$JULSink warn
WARNING: Error injecting: org.eclipse.aether.internal.impl.DefaultRepositorySystem
com.google.inject.ProvisionException: Guice provision errors:

1) No implementation for org.eclipse.aether.impl.ArtifactDescriptorReader was bound.
  while locating org.eclipse.aether.internal.impl.DefaultRepositorySystem

1 error
   at com.google.inject.internal.InjectorImpl$3.get(InjectorImpl.java:974)
   at com.google.inject.internal.InjectorImpl.getInstance(InjectorImpl.java:1000)
   at org.sonatype.guice.bean.reflect.AbstractDeferredClass.get(AbstractDeferredClass.java:45)
   at com.google.inject.internal.ProviderInternalFactory.provision(ProviderInternalFactory.java:84)
   at com.google.inject.internal.InternalFactoryToInitializableAdapter.provision(InternalFactoryToInitializableAdapter.java:52)
   at com.google.inject.internal.ProviderInternalFactory$1.call(ProviderInternalFactory.java:70)
   at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision(ProvisionListenerStackCallback.java:100)
   at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision(ProvisionListenerStackCallback.java:115)
   at com.google.inject.internal.ProvisionListenerStackCallback.provision(ProvisionListenerStackCallback.java:55)
   at com.google.inject.internal.ProviderInternalFactory.circularGet(ProviderInternalFactory.java:68)
   at com.google.inject.internal.InternalFactoryToInitializableAdapter.get(InternalFactoryToInitializableAdapter.java:45)
   at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
   at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1018)
   at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
   at com.google.inject.Scopes$1$1.get(Scopes.java:59)
   at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:41)
   at com.google.inject.internal.InjectorImpl$3$1.call(InjectorImpl.java:965)
   at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1018)
   at com.google.inject.internal.InjectorImpl$3.get(InjectorImpl.java:961)
   at org.sonatype.guice.bean.locators.LazyBeanEntry.getValue(LazyBeanEntry.java:83)
   at org.sonatype.guice.plexus.locators.LazyPlexusBean.getValue(LazyPlexusBean.java:49)
   at org.sonatype.guice.plexus.binders.PlexusRequirements$RequirementProvider.get(PlexusRequirements.java:217)
   at org.sonatype.guice.plexus.binders.ProvidedPropertyBinding.injectProperty(ProvidedPropertyBinding.java:45)
   at org.sonatype.guice.bean.inject.BeanInjector.injectMembers(BeanInjector.java:53)
   at com.google.inject.internal.MembersInjectorImpl.injectMembers(MembersInjectorImpl.java:128)
   at com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:117)
   at com.google.inject.internal.ConstructorInjector.access$000(ConstructorInjector.java:32)
   at com.google.inject.internal.ConstructorInjector$1.call(ConstructorInjector.java:91)
   at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision(ProvisionListenerStackCallback.java:100)
   at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision(ProvisionListenerStackCallback.java:115)
   at com.google.inject.internal.ProvisionListenerStackCallback.provision(ProvisionListenerStackCallback.java:55)
   at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:89)
   at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:259)
   at com.google.inject.internal.InjectorImpl$3$1.call(InjectorImpl.java:965)
   at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1018)
   at com.google.inject.internal.InjectorImpl$3.get(InjectorImpl.java:961)
   at com.google.inject.internal.InjectorImpl.getInstance(InjectorImpl.java:1000)
   at org.sonatype.guice.bean.reflect.AbstractDeferredClass.get(AbstractDeferredClass.java:45)
   at com.google.inject.internal.ProviderInternalFactory.provision(ProviderInternalFactory.java:84)
   at com.google.inject.internal.InternalFactoryToInitializableAdapter.provision(InternalFactoryToInitializableAdapter.java:52)
   at com.google.inject.internal.ProviderInternalFactory$1.call(ProviderInternalFactory.java:70)
   at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision(ProvisionListenerStackCallback.java:100)
   at org.sonatype.guice.plexus.lifecycles.PlexusLifecycleManager.onProvision(PlexusLifecycleManager.java:138)
   at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision(ProvisionListenerStackCallback.java:108)
   at com.google.inject.internal.ProvisionListenerStackCallback.provision(ProvisionListenerStackCallback.java:55)
   at com.google.inject.internal.ProviderInternalFactory.circularGet(ProviderInternalFactory.java:68)
   at com.google.inject.internal.InternalFactoryToInitializableAdapter.get(InternalFactoryToInitializableAdapter.java:45)
   at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
   at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1018)
   at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
   at com.google.inject.Scopes$1$1.get(Scopes.java:59)
   at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:41)
   at com.google.inject.internal.InjectorImpl$3$1.call(InjectorImpl.java:965)
   at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1011)
   at com.google.inject.internal.InjectorImpl$3.get(InjectorImpl.java:961)
   at org.sonatype.guice.bean.locators.LazyBeanEntry.getValue(LazyBeanEntry.java:83)
   at org.sonatype.guice.plexus.locators.LazyPlexusBean.getValue(LazyPlexusBean.java:49)
   at org.sonatype.guice.bean.locators.EntryListAdapter$ValueIterator.next(EntryListAdapter.java:112)
   at java.util.AbstractCollection.addAll(AbstractCollection.java:341)
   at org.apache.maven.DefaultMaven.getLifecycleParticipants(DefaultMaven.java:538)
   at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:270)
   at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
   at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
   at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
   at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
   at java.lang.reflect.Method.invoke(Method.java:606)
   at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
   at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
   at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
   at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)

Mar 02, 2014 4:06:16 PM org.sonatype.guice.bean.reflect.Logs$JULSink warn
WARNING: Error injecting: com.jayway.maven.plugins.android.phase_prebuild.AarMavenLifecycleParticipant
com.google.inject.ProvisionException: Guice provision errors:

1) No implementation for org.eclipse.aether.impl.ArtifactDescriptorReader was bound.
  while locating org.eclipse.aether.internal.impl.DefaultRepositorySystem
  at ClassRealm[extension>com.jayway.maven.plugins.android.generation2:android-maven-plugin:3.9.0-rc.1, parent: sun.misc.Launcher$AppClassLoader@6bd46c20]
  at ClassRealm[extension>com.jayway.maven.plugins.android.generation2:android-maven-plugin:3.9.0-rc.1, parent: sun.misc.Launcher$AppClassLoader@6bd46c20]
  while locating org.eclipse.aether.RepositorySystem
  while locating com.jayway.maven.plugins.android.phase_prebuild.AarMavenLifecycleParticipant

1 error
   at com.google.inject.internal.InjectorImpl$3.get(InjectorImpl.java:974)
   at com.google.inject.internal.InjectorImpl.getInstance(InjectorImpl.java:1000)
   at org.sonatype.guice.bean.reflect.AbstractDeferredClass.get(AbstractDeferredClass.java:45)
   at com.google.inject.internal.ProviderInternalFactory.provision(ProviderInternalFactory.java:84)
   at com.google.inject.internal.InternalFactoryToInitializableAdapter.provision(InternalFactoryToInitializableAdapter.java:52)
   at com.google.inject.internal.ProviderInternalFactory$1.call(ProviderInternalFactory.java:70)
   at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision(ProvisionListenerStackCallback.java:100)
   at org.sonatype.guice.plexus.lifecycles.PlexusLifecycleManager.onProvision(PlexusLifecycleManager.java:138)
   at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision(ProvisionListenerStackCallback.java:108)
   at com.google.inject.internal.ProvisionListenerStackCallback.provision(ProvisionListenerStackCallback.java:55)
   at com.google.inject.internal.ProviderInternalFactory.circularGet(ProviderInternalFactory.java:68)
   at com.google.inject.internal.InternalFactoryToInitializableAdapter.get(InternalFactoryToInitializableAdapter.java:45)
   at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
   at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1018)
   at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
   at com.google.inject.Scopes$1$1.get(Scopes.java:59)
   at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:41)
   at com.google.inject.internal.InjectorImpl$3$1.call(InjectorImpl.java:965)
   at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1011)
   at com.google.inject.internal.InjectorImpl$3.get(InjectorImpl.java:961)
   at org.sonatype.guice.bean.locators.LazyBeanEntry.getValue(LazyBeanEntry.java:83)
   at org.sonatype.guice.plexus.locators.LazyPlexusBean.getValue(LazyPlexusBean.java:49)
   at org.sonatype.guice.bean.locators.EntryListAdapter$ValueIterator.next(EntryListAdapter.java:112)
   at java.util.AbstractCollection.addAll(AbstractCollection.java:341)
   at org.apache.maven.DefaultMaven.getLifecycleParticipants(DefaultMaven.java:538)
   at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:270)
   at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
   at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
   at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
   at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
   at java.lang.reflect.Method.invoke(Method.java:606)
   at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
   at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
   at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
   at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)

Internal error: com.google.inject.ProvisionException: Guice provision errors:

1) No implementation for org.eclipse.aether.impl.ArtifactDescriptorReader was bound.
while locating org.eclipse.aether.internal.impl.DefaultRepositorySystem
at ClassRealm[extension>com.jayway.maven.plugins.android.generation2:android-maven-plugin:3.9.0-rc.1, parent: sun.misc.Launcher$AppClassLoader@6bd46c20]
at ClassRealm[extension>com.jayway.maven.plugins.android.generation2:android-maven-plugin:3.9.0-rc.1, parent: sun.misc.Launcher$AppClassLoader@6bd46c20]
while locating org.eclipse.aether.RepositorySystem
while locating com.jayway.maven.plugins.android.phase_prebuild.AarMavenLifecycleParticipant
at ClassRealm[extension>com.jayway.maven.plugins.android.generation2:android-maven-plugin:3.9.0-rc.1, parent: sun.misc.Launcher$AppClassLoader@6bd46c20]
at ClassRealm[extension>com.jayway.maven.plugins.android.generation2:android-maven-plugin:3.9.0-rc.1, parent: sun.misc.Launcher$AppClassLoader@6bd46c20]
while locating org.apache.maven.AbstractMavenLifecycleParticipant annotated with @com.google.inject.name.Named(value=AarMavenLifecycleListener)

1 error
-> [Help 1]
org.apache.maven.InternalErrorException: Internal error: com.google.inject.ProvisionException: Guice provision errors:

1) No implementation for org.eclipse.aether.impl.ArtifactDescriptorReader was bound.
  while locating org.eclipse.aether.internal.impl.DefaultRepositorySystem
  at ClassRealm[extension>com.jayway.maven.plugins.android.generation2:android-maven-plugin:3.9.0-rc.1, parent: sun.misc.Launcher$AppClassLoader@6bd46c20]
  at ClassRealm[extension>com.jayway.maven.plugins.android.generation2:android-maven-plugin:3.9.0-rc.1, parent: sun.misc.Launcher$AppClassLoader@6bd46c20]
  while locating org.eclipse.aether.RepositorySystem
  while locating com.jayway.maven.plugins.android.phase_prebuild.AarMavenLifecycleParticipant
  at ClassRealm[extension>com.jayway.maven.plugins.android.generation2:android-maven-plugin:3.9.0-rc.1, parent: sun.misc.Launcher$AppClassLoader@6bd46c20]
  at ClassRealm[extension>com.jayway.maven.plugins.android.generation2:android-maven-plugin:3.9.0-rc.1, parent: sun.misc.Launcher$AppClassLoader@6bd46c20]
  while locating org.apache.maven.AbstractMavenLifecycleParticipant annotated with @com.google.inject.name.Named(value=AarMavenLifecycleListener)

1 error
   at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:168)
   at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
   at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
   at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
   at java.lang.reflect.Method.invoke(Method.java:606)
   at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
   at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
   at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
   at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
Caused by: com.google.inject.ProvisionException: Guice provision errors:

1) No implementation for org.eclipse.aether.impl.ArtifactDescriptorReader was bound.
  while locating org.eclipse.aether.internal.impl.DefaultRepositorySystem
  at ClassRealm[extension>com.jayway.maven.plugins.android.generation2:android-maven-plugin:3.9.0-rc.1, parent: sun.misc.Launcher$AppClassLoader@6bd46c20]
  at ClassRealm[extension>com.jayway.maven.plugins.android.generation2:android-maven-plugin:3.9.0-rc.1, parent: sun.misc.Launcher$AppClassLoader@6bd46c20]
  while locating org.eclipse.aether.RepositorySystem
  while locating com.jayway.maven.plugins.android.phase_prebuild.AarMavenLifecycleParticipant
  at ClassRealm[extension>com.jayway.maven.plugins.android.generation2:android-maven-plugin:3.9.0-rc.1, parent: sun.misc.Launcher$AppClassLoader@6bd46c20]
  at ClassRealm[extension>com.jayway.maven.plugins.android.generation2:android-maven-plugin:3.9.0-rc.1, parent: sun.misc.Launcher$AppClassLoader@6bd46c20]
  while locating org.apache.maven.AbstractMavenLifecycleParticipant annotated with @com.google.inject.name.Named(value=AarMavenLifecycleListener)

1 error
   at com.google.inject.internal.InjectorImpl$3.get(InjectorImpl.java:974)
   at org.sonatype.guice.bean.locators.LazyBeanEntry.getValue(LazyBeanEntry.java:83)
   at org.sonatype.guice.plexus.locators.LazyPlexusBean.getValue(LazyPlexusBean.java:49)
   at org.sonatype.guice.bean.locators.EntryListAdapter$ValueIterator.next(EntryListAdapter.java:112)
   at java.util.AbstractCollection.addAll(AbstractCollection.java:341)
   at org.apache.maven.DefaultMaven.getLifecycleParticipants(DefaultMaven.java:538)
   at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:270)
   at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
   ... 11 more

To see the full stack trace of the errors, re-run Maven with the -e switch.
Re-run Maven using the -X switch to enable full debug logging.

For more information about the errors and possible solutions, please read the following articles:
[Help 1] http://cwiki.apache.org/confluence/display/MAVEN/InternalErrorException
Trying to run the project from inside NetBeans fails as well (I think in a way similar to how it probably fails to run in Eclipse for others). Can't continue developing the project for now because I can't get the project to work correctly anymore.

- Agetian
Agetian
Programmer
 
Posts: 3486
Joined: 14 Mar 2011, 05:58
Has thanked: 683 times
Been thanked: 569 times

Re: Working out the multi-module maven setup

Postby teferi » 02 Mar 2014, 14:29

I reverted all my changes in order to unlock you all.

It was never my intention to block devs like this. I want to humbly apologise for all this. I got carried away in my desire to help.

I'll make a branch to test and validate without impacting the trunk. Changes can be merged from there once validated for the following IDEs: eclipse, netbeans and intellij.
teferi
 
Posts: 8
Joined: 12 Feb 2014, 19:47
Has thanked: 0 time
Been thanked: 6 times

Re: Working out the multi-module maven setup

Postby Agetian » 02 Mar 2014, 15:09

I like the idea of making a branch for this project - the idea of the updated Maven setup is awesome but I agree that it needs to be tested and validated in different working environments before it goes into trunk. I'll be happy to check out your branch in a separate folder and help test it and ascertain that it works as desired in my [pretty unusual] working conditions - that is, on Linux using NetBeans.

- Agetian
Agetian
Programmer
 
Posts: 3486
Joined: 14 Mar 2011, 05:58
Has thanked: 683 times
Been thanked: 569 times

Re: Working out the multi-module maven setup

Postby drdev » 02 Mar 2014, 15:35

teferi, thank you for being cool about this. I'm sorry if I came off a bit harsh earlier. I was just frustrated that I couldn't do some development yesterday after not having much time this past week.

While you work out the more involved Maven changes, could you (or someone) at least help me get forge-m-base able to pull in the missing references to the Maven dependencies, even if it's just a workaround or hack?
drdev
Programmer
 
Posts: 1958
Joined: 27 Jul 2013, 02:07
Has thanked: 189 times
Been thanked: 565 times

Re: Working out the multi-module maven setup

Postby Chris H. » 02 Mar 2014, 16:20

Thank you teferi for your effort.
User avatar
Chris H.
Forge Moderator
 
Posts: 6320
Joined: 04 Nov 2008, 12:11
Location: Mac OS X Yosemite
Has thanked: 644 times
Been thanked: 643 times

PreviousNext

Return to Developer's Corner

Who is online

Users browsing this forum: No registered users and 9 guests


Who is online

In total there are 9 users online :: 0 registered, 0 hidden and 9 guests (based on users active over the past 10 minutes)
Most users ever online was 4143 on 23 Jan 2024, 08:21

Users browsing this forum: No registered users and 9 guests

Login Form