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

start-server to skip already started server #8

Closed
bwa opened this issue Dec 16, 2013 · 10 comments
Closed

start-server to skip already started server #8

bwa opened this issue Dec 16, 2013 · 10 comments
Assignees

Comments

@bwa
Copy link

bwa commented Dec 16, 2013

If start-server goal is run when server is already running, it's more convenient to just skip and return without a failure

@ghost ghost assigned jgawor Jan 15, 2014
@jgawor
Copy link
Contributor

jgawor commented Jan 15, 2014

This is fixed now. Latest snapshot of liberty-maven-plugin is published to https://oss.sonatype.org/content/repositories/snapshots/.

@jgawor jgawor closed this as completed Jan 15, 2014
@bwa
Copy link
Author

bwa commented Feb 3, 2014

I have tried that, but get a unexpected error. Running maven 3.0.4

WARNING: Error injecting: net.wasdev.wlp.maven.plugins.applications.InstallAppsMojo
java.lang.TypeNotPresentException: Type net.wasdev.wlp.maven.plugins.applications.InstallAppsMojo not present
at org.sonatype.guice.bean.reflect.URLClassSpace.loadClass(URLClassSpace.java:109)
at org.sonatype.guice.bean.reflect.NamedClass.load(NamedClass.java:45)
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.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 com.google.inject.Scopes$1$1.get(Scopes.java:59)
at org.sonatype.guice.bean.locators.LazyBeanEntry.getValue(LazyBeanEntry.java:83)
at org.sonatype.guice.plexus.locators.LazyPlexusBean.getValue(LazyPlexusBean.java:49)
at org.codehaus.plexus.DefaultPlexusContainer.lookup(DefaultPlexusContainer.java:253)
at org.codehaus.plexus.DefaultPlexusContainer.lookup(DefaultPlexusContainer.java:245)
at org.apache.maven.plugin.internal.DefaultMavenPluginManager.getConfiguredMojo(DefaultMavenPluginManager.java:455)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:92)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320)
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)
Caused by: java.lang.NoClassDefFoundError: org/codehaus/mojo/pluginsupport/MojoSupport
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:800)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClassFromSelf(ClassRealm.java:386)
at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:42)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:244)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:230)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:800)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClassFromSelf(ClassRealm.java:386)
at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:42)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:244)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:230)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:800)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClassFromSelf(ClassRealm.java:386)
at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:42)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:244)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:230)
at org.sonatype.guice.bean.reflect.URLClassSpace.loadClass(URLClassSpace.java:101)
... 41 more
Caused by: java.lang.ClassNotFoundException: org.codehaus.mojo.pluginsupport.MojoSupport
at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:50)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:244)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:230)
... 81 more

@jgawor
Copy link
Contributor

jgawor commented Feb 3, 2014

I'm unable to replicate. Can you provide any additional details on how you got this error or any way to replicate? Which Java version btw?

@bwa
Copy link
Author

bwa commented Feb 3, 2014

Version is JDK 7u51 64bit for Windows.

The command was very simple: mvn –Pliberty

I have created a profile for liberty. If I just swith from

            <groupId>net.wasdev.wlp.maven.plugins</groupId>
             <version>1.0-SNAPSHOT</version>

To

            <groupId>com.ibm.websphere.wlp.maven.plugins</groupId>
            <version>1.1</version>

it works, but I would like the not getting an error when the server is already running…

Med vennlig hilsen / Regards from

Bjørn-Willy Arntzen
Seniorkonsulent IT
Kommunal Landspensjonskasse gjensidig forsikringsselskap
Dronning Eufemias gate 10, 0191 Oslo, Pb 400, Sentrum, 0103 Oslo
Mob: +4797759007
www.klp.nohttp://www.klp.no/

Vennligst tenk på miljøet før du skriver ut denne e-posten

Fra: Jarek Gawor [mailto:notifications@github.com]
Sendt: 3. februar 2014 18:35
Til: WASdev/ci.maven
Kopi: Bjørn-Willy Arntzen
Emne: Re: [ci.maven] start-server to skip already started server (#8)

I'm unable to replicate. Can you provide any additional details on how you got this error or any way to replicate? Which Java version btw?


Reply to this email directly or view it on GitHubhttps://github.com//issues/8#issuecomment-33978782.

@jgawor
Copy link
Contributor

jgawor commented Feb 3, 2014

Does it work when you run the following command:

mvn net.wasdev.wlp.maven.plugins:liberty-maven-plugin:1.0-SNAPSHOT:start-server -DserverHome=/path/to/your/wlp/dir

I published another snapshot to see if it helps.

@bwa
Copy link
Author

bwa commented Feb 4, 2014

Nope, I had to download it manually and give it a version numer as our Nexus for some reason cannot connect to https://oss.sonatype.org/content/repositories/snapshots/

Where is org/codehaus/mojo/pluginsupport/MojoSupport supposed to be located ? In Maven classpath ?

C:\RAD9\workspace5\kundeside-dar>mvn net.wasdev.wlp.maven.plugins:liberty-maven-plugin:1.0.1-KLP:start-server -DserverHome=c:/liberty -U
[INFO] Scanning for projects...
Downloading: http://klp-m2repo.klp.no/repo/net/wasdev/wlp/maven/plugins/liberty-maven-plugin/1.0.1-KLP/liberty-maven-plugin-1.0.1-KLP.pom
feb 04, 2014 7:37:12 AM
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building kundeside-dar 2.2.2-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- liberty-maven-plugin:1.0.1-KLP:start-server (default-cli) @ kundeside-dar ---
feb 04, 2014 7:37:12 AM org.sonatype.guice.bean.reflect.Logs$JULSink warn
WARNING: Error injecting: net.wasdev.wlp.maven.plugins.server.StartServerMojo
java.lang.TypeNotPresentException: Type net.wasdev.wlp.maven.plugins.server.StartServerMojo not present
at org.sonatype.guice.bean.reflect.URLClassSpace.loadClass(URLClassSpace.java:109)
at org.sonatype.guice.bean.reflect.NamedClass.load(NamedClass.java:45)
.....
Caused by: java.lang.NoClassDefFoundError: org/codehaus/mojo/pluginsupport/MojoSupport

@jgawor
Copy link
Contributor

jgawor commented Feb 4, 2014

The MojoSupport class comes from the following dependency:

    <dependency>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>plugin-support</artifactId>
        <version>1.0-alpha-1</version>
    </dependency>

See what happens if you delete this jar from your local Maven repository. I got a similar error if I set the size of the plugin-support-1.0-alpha-1.jar to 0 bytes. If you still see the problem please attach (if possible) your maven execution with -X option.

@bwa
Copy link
Author

bwa commented Feb 5, 2014

Some dependency info must be missing. I removed all codehaus from my local repo, After a start-server only codehaus-parent, jettison and plexus was downloaded to my local repo. org.codehaus.mojo was not downloaded to my local repo.

Then I started the server with com.ibm.websphere.wlp.maven.plugins</groupId 1.1, and now jackson, mojo and woodstox was downloaded ...

Even after the fresh download, I still get the ClassNotFound exception, so It looks like some imports are gone ?

@jgawor
Copy link
Contributor

jgawor commented Feb 6, 2014

The mojo dependency is clearly specified in the pom.xml and so it should be available on the classpath when the plug-in executes. Can you send me an output of the maven command when you run it with -X option? If you prefer to email it, you can reach me at jgawor at gmail.com

@bwa
Copy link
Author

bwa commented Nov 3, 2014

I tried this again today, and now it works as designed. I now can redeploy as a wish when the server is running. Great !!!

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

2 participants