I suggest to make a POC using https://github.com/tbroyer/gwt-maven-archetypes/ archetype, using modular-webapp.
On Fri, 21 Apr 2017 at 14:38 Magnus <[email protected]> wrote: > >>> So, "mvn package" should Just Work⢠(package the lib, then package the >> app using the lib's jar). >> > > Yes, works! > > >> "mvn gwt:devmode" and "mvn gwt:codeserver" should work without too much >> configuration (configure warDir/launcherDir, possibly projects/modules) >> > > Actually, it gives an error (see below): > > Could not find goal 'devmode' in plugin > org.codehaus.mojo:gwt-maven-plugin:2.8.0 among available goals... > > > I believe I have to extend the minimal top-level pom.xml, but how? > And I'd like to leave the pom.xml in the sub folders as is, because they > are working for their own... Is this possible? > > >> This is also the point with the development cycle: When debugging, >>> eclipse doesn't "see" the changed library source code, because it fetches >>> the library source code from the jar file in its own target folder. >>> >> >> Actually the one from your local repository (~/.m2/repository/), not >> directly the one from the target/ folder. >> > > This is an important point! If the app used the library jar from the > repository and not from its own target directory, there would be no need to > "mvn package" the app and this takes most of the time... > > >> Wouldn't it be better for developing if the original library code was >>> used instead? Could it be that this is the core of the problem? >>> >> >> > >> And the problem is that Eclipse errors when importing your app project >> when using the default configuration for resolving dependencies from the >> workspace; which is why you turned that setting off. >> > If you figure out how to get this working, then it should (hopefully work) >> the same with or without a reactor. >> > > I can enable it for the lib project without problems. But as soon as I > enable it for the app project, the error reappears. > It's hard to figure it out when even the experts in this group have no > idea. But I see that this is an essential point, so I have documented the > error as detailed as possible again (see below). I hope there will be a > solution... > > Thanks > Magnus > > > > *Maven error when executing "mvn gwt:devmode" at the top-level:* > > [INFO] Reactor Build Order: > [INFO] > [INFO] msm-lib-acs > [INFO] msm.app.bcs.Application > [INFO] msm > [INFO] > ------------------------------------------------------------------------ > [INFO] Reactor Summary: > [INFO] > [INFO] msm-lib-acs ....................................... SKIPPED > [INFO] msm.app.bcs.Application ........................... SKIPPED > [INFO] msm ............................................... SKIPPED > [INFO] > ------------------------------------------------------------------------ > [INFO] BUILD FAILURE > [INFO] > ------------------------------------------------------------------------ > [INFO] Total time: 2.603s > [INFO] Finished at: Fri Apr 21 19:13:32 CEST 2017 > [INFO] Final Memory: 10M/241M > [INFO] > ------------------------------------------------------------------------ > [ERROR] Could not find goal 'devmode' in plugin > org.codehaus.mojo:gwt-maven-plugin:2.8.0 among available goals clean, > compile, compile-report, css, debug, eclipse, eclipseTest, generateAsync, > help, i18n, mergewebxml, resources, run, run-codeserver, source-jar, test > -> [Help 1] > [ERROR] > [ERROR] To see the full stack trace of the errors, re-run Maven with the > -e switch. > [ERROR] Re-run Maven using the -X switch to enable full debug logging. > [ERROR] > [ERROR] For more information about the errors and possible solutions, > please read the following articles: > [ERROR] [Help 1] > http://cwiki.apache.org/confluence/display/MAVEN/MojoNotFoundException > > > > > > *Error in the application project's pom.xml when "resolve dependencies" is > enabled:* > > The pom.xml has an error marker at the packaging tag: > > > <https://lh3.googleusercontent.com/-te4sS0zOONA/WPpCEa5F9CI/AAAAAAAAAOY/SFI6Np4NcpYRpopSbsRhn7AJWwuWLKcWACLcB/s1600/error.png> > > The error behind this error marker is this: > > Failed to copy file for artifact > [msm.lib.acs:msm-lib-acs:jar:1.0-SNAPSHOT:compile] > (org.apache.maven.plugins:maven-war-plugin:2.2:war:default-war:package) > > org.apache.maven.plugin.MojoExecutionException: Failed to copy file for > artifact [msm.lib.acs:msm-lib-acs:jar:1.0-SNAPSHOT:compile] > at > org.apache.maven.plugin.war.packaging.ArtifactsPackagingTask.performPackaging(ArtifactsPackagingTask.java:131) > at > org.apache.maven.plugin.war.packaging.WarProjectPackagingTask.handleArtifacts(WarProjectPackagingTask.java:190) > at > org.apache.maven.plugin.war.packaging.WarProjectPackagingTask.performPackaging(WarProjectPackagingTask.java:109) > at > org.apache.maven.plugin.war.AbstractWarMojo.buildWebapp(AbstractWarMojo.java:472) > at > org.apache.maven.plugin.war.AbstractWarMojo.buildExplodedWebapp(AbstractWarMojo.java:404) > at org.apache.maven.plugin.war.WarMojo.performPackaging(WarMojo.java:215) > at org.apache.maven.plugin.war.WarMojo.execute(WarMojo.java:177) > at > org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134) > at > org.eclipse.m2e.core.internal.embedder.MavenImpl.execute(MavenImpl.java:331) > at > org.eclipse.m2e.core.internal.embedder.MavenImpl$11.call(MavenImpl.java:1362) > at > org.eclipse.m2e.core.internal.embedder.MavenImpl$11.call(MavenImpl.java:1) > at > org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeBare(MavenExecutionContext.java:176) > at > org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:112) > at > org.eclipse.m2e.core.internal.embedder.MavenImpl.execute(MavenImpl.java:1360) > at > org.eclipse.m2e.core.project.configurator.MojoExecutionBuildParticipant.build(MojoExecutionBuildParticipant.java:52) > at > org.eclipse.m2e.core.internal.builder.MavenBuilderImpl.build(MavenBuilderImpl.java:137) > at > org.eclipse.m2e.core.internal.builder.MavenBuilder$1.method(MavenBuilder.java:172) > at > org.eclipse.m2e.core.internal.builder.MavenBuilder$1.method(MavenBuilder.java:1) > at > org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod$1$1.call(MavenBuilder.java:115) > at > org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeBare(MavenExecutionContext.java:176) > at > org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:112) > at > org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod$1.call(MavenBuilder.java:105) > at > org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeBare(MavenExecutionContext.java:176) > at > org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:151) > at > org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:99) > at > org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod.execute(MavenBuilder.java:86) > at > org.eclipse.m2e.core.internal.builder.MavenBuilder.build(MavenBuilder.java:200) > at > org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:735) > at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) > at > org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:206) > at > org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:246) > at > org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:301) > at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) > at > org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:304) > at > org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:360) > at > org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:383) > at > org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:144) > at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:235) > at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55) > Caused by: java.io.FileNotFoundException: > /home/wagner/dvl/prj/msm/msm-lib-acs/target/classes (Is a directory) > at java.io.FileInputStream.open0(Native Method) > at java.io.FileInputStream.open(FileInputStream.java:195) > at java.io.FileInputStream.<init>(FileInputStream.java:138) > at > org.codehaus.plexus.util.io.FileInputStreamFacade.getInputStream(FileInputStreamFacade.java:36) > at org.codehaus.plexus.util.FileUtils.copyStreamToFile(FileUtils.java:1141) > at org.codehaus.plexus.util.FileUtils.copyFile(FileUtils.java:1048) > at > org.apache.maven.plugin.war.packaging.AbstractWarPackagingTask.copyFile(AbstractWarPackagingTask.java:293) > at > org.apache.maven.plugin.war.packaging.AbstractWarPackagingTask$1.registered(AbstractWarPackagingTask.java:150) > at > org.apache.maven.plugin.war.util.WebappStructure.registerFile(WebappStructure.java:211) > at > org.apache.maven.plugin.war.packaging.AbstractWarPackagingTask.copyFile(AbstractWarPackagingTask.java:145) > at > org.apache.maven.plugin.war.packaging.ArtifactsPackagingTask.performPackaging(ArtifactsPackagingTask.java:106) > ... 38 more > > > > -- > You received this message because you are subscribed to the Google Groups > "GWT Users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To post to this group, send email to [email protected]. > Visit this group at https://groups.google.com/group/google-web-toolkit. > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "GWT Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/google-web-toolkit. For more options, visit https://groups.google.com/d/optout.
