From: Alexandre G. <ale...@gm...> - 2009-07-07 22:21:00
|
Hello all, I'm writing a blog post about the creation of RHQ plugin and I'm trying all the paths to get it done. Well, I've already done it before but now I'm starting from the very beginning, trying to follow the same steps a newbie would do. *1. The first trying was using the Skeleton Plugin [1].* I updated my source tree to rev 4298, built it and everything went just fine. Then, I made a copy of etc/samples/skeleton-plugin on /modules/plugins/test1, tried to build it and, for my surprise, it didn't compile! test1$ mvn package (...) [INFO] ------------------------------------------------------------------------ [ERROR] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Compilation failure /Volumes/Data/Code/ jboss.org/rhq/modules/plugins/test1/src/main/java/org/rhq/sample/skeletonplugin/SamplePluginServerComponent.java:[39,43]<http://jboss.org/rhq/modules/plugins/test1/src/main/java/org/rhq/sample/skeletonplugin/SamplePluginServerComponent.java:%5B39,43%5D>package org.rhq.core.pluginapi.availability does not exist /Volumes/Data/Code/ jboss.org/rhq/modules/plugins/test1/src/main/java/org/rhq/sample/skeletonplugin/SamplePluginServerComponent.java:[39,43]<http://jboss.org/rhq/modules/plugins/test1/src/main/java/org/rhq/sample/skeletonplugin/SamplePluginServerComponent.java:%5B39,43%5D>package org.rhq.core.pluginapi.availability does not exist [INFO] ------------------------------------------------------------------------ [INFO] For more information, run Maven with the -e switch [INFO] ------------------------------------------------------------------------ [INFO] Total time: 20 seconds [INFO] Finished at: Fri Jul 03 09:48:48 BRT 2009 [INFO] Final Memory: 6M/15M The same error happens if I set test1 as a module in plugins' pom.xml and build it from modules/plugins dir. *2. The second trying was using Maven Archetype [2]* I did plugins$ mvn archetype:generate -DarchetypeGroupId=org.rhq -DarchetypeArtifactId=rhq-plugin-archetype -DarchetypeVersion=1.0.0.GA-DarchetypeRepository= *http://snapshots.jboss.org/maven2*/ -Drhq-plugin-name=test2 -DgroupId=my.second.test -DartifactId=test2 -Dversion=*1.3.0-SNAPSHOT*-Dpackage=my.second.test but I had to change some arguments to get depended libs compatible with my source tree. This should be clear in [2] instructions. test2 plugin was built and deployed successfully. WOW! 11:08:04,592 INFO [ProductPluginDeployer] Discovered agent plugin [test2] 11:08:04,766 INFO [ProductPluginDeployer] Deploying [1] new or updated agent plugins: [test2] 11:08:05,217 INFO [ProductPluginDeployer] Plugin metadata updates are complete: [test2] *3. The third trying was using Plugin Generator * plugins$ java -jar rhq-pluginGen-1.2.2-jar-with-dependencies.jar Please specify the plugin root category PLATFORM(P), SERVER(S), SERVICE(I), i Please specify its PackagePrefix: my.third.test Please specify its FileSystemRoot: /Users/alegomes/Code/ jboss.org/rhq-mssql/modules/plugins Please specify its ComponentClass: ThirdComponent Please specify its DiscoveryClass: ThirdDiscovery Please specify if it should support Events (y/N): Please specify its ParentType: Please specify if it should support Monitoring (y/N): y Please specify if it should support Operations (y/N): Please specify if it should support Singleton (y/N): Please specify if it should support ResourceConfiguration (y/N): Please specify if it should support CreateChildren (y/N): y Please specify if it should support UsesExternalJarsInPlugin (y/N): y Please specify if it should support DeleteChildren (y/N): y Please specify if it should support ManualAddOfChildren (y/N): y Please specify if it should support UsePluginLifecycleListenerApi (y/N): Please specify its Name: test3 Please specify its Description: My third Test Do you want to add a child to test3? (y/N) Don't forget to add your plugin to the parent pom.xml plugins$ cd test3 test3 $ mvn package [INFO] Scanning for projects... [INFO] ------------------------------------------------------------------------ [ERROR] FATAL ERROR [INFO] ------------------------------------------------------------------------ [INFO] Failed to resolve artifact. GroupId: org.rhq ArtifactId: rhq-plugins-parent Version: 1.2.0-SNAPSHOT Reason: Unable to download the artifact from any repository org.rhq:rhq-plugins-parent:pom:1.2.0-SNAPSHOT from the specified remote repositories: central (http://repo1.maven.org/maven2) ... [INFO] ------------------------------------------------------------------------ [INFO] Total time: 1 second [INFO] Finished at: Tue Jul 07 11:48:59 BRT 2009 [INFO] Final Memory: 1M/2M [INFO] ------------------------------------------------------------------------ Oh yes, I forgot, we need to change test3/pom.xml, replacing <version>1.2.0-SNAPSHOT</version><!-- TODO adjust RHQ version --> by <version>1.*3*.0-SNAPSHOT</version><!-- TODO adjust RHQ version --> What about showing at the end of plugin generation process the instruction of changing pom.xml? Then, when I tried to deploy my brand new plugin, I got a problem: 19:07:05,942 INFO [ProductPluginDeployer] Discovered agent plugin [test3] 19:07:05,977 INFO [ProductPluginDeployer] Deploying [1] new or updated agent plugins: [test3] 19:07:06,249 ERROR [PluginMetadataManager] Error transforming plugin descriptor [test3]. org.rhq.core.clientapi.agent.metadata.InvalidPluginDescriptorException: Configuration properties are missing. Resource configurations must have at least one group or one config-property as a child. ... 19:07:06,279 ERROR [ProductPluginDeployer] Failed to register RHQ plugin file [test3-plugin-1.3.0-SNAPSHOT.jar] at [file:/Volumes/Data/Code/ jboss.org/rhq-mssql/modules/enterprise/server/container/target/rhq-server-1.3.0-SNAPSHOT/jbossas/server/default/tmp/deploy/tmp2270423192953241509test3-plugin-1.3.0-SNAPSHOT.jar ] java.lang.Exception: Failed to load plugin [test3]. Isn't it strange a generated code not deploying correctly? [1] http://support.rhq-project.org/display/RHQ/Plugins+-+Skeleton+Plugin [2] http://support.rhq-project.org/display/RHQ/Plugins+-+Archetype Hope this helps somehow.... -- []s! |
From: Ian S. <ian...@re...> - 2009-07-07 23:12:42
|
Alexandre, Thanks for the heads up. I've fixed 1) and 2), and it looks like someone else has already fixed 3). Regards, Ian On 7/7/2009 6:20 PM, Alexandre Gomes wrote: > Hello all, > I'm writing a blog post about the creation of RHQ plugin and I'm trying all > the paths to get it done. Well, I've already done it before but now I'm > starting from the very beginning, trying to follow the same steps a newbie > would do. > > *1. The first trying was using the Skeleton Plugin [1].* > > I updated my source tree to rev 4298, built it and everything went just > fine. Then, I made a copy of etc/samples/skeleton-plugin > on /modules/plugins/test1, tried to build it and, for my surprise, it didn't > compile! > > test1$ mvn package > (...) > [INFO] > ------------------------------------------------------------------------ > [ERROR] BUILD FAILURE > [INFO] > ------------------------------------------------------------------------ > [INFO] Compilation failure > /Volumes/Data/Code/ > jboss.org/rhq/modules/plugins/test1/src/main/java/org/rhq/sample/skeletonplugin/SamplePluginServerComponent.java:[39,43]<http://jboss.org/rhq/modules/plugins/test1/src/main/java/org/rhq/sample/skeletonplugin/SamplePluginServerComponent.java:%5B39,43%5D>package > org.rhq.core.pluginapi.availability does not exist > > > > /Volumes/Data/Code/ > jboss.org/rhq/modules/plugins/test1/src/main/java/org/rhq/sample/skeletonplugin/SamplePluginServerComponent.java:[39,43]<http://jboss.org/rhq/modules/plugins/test1/src/main/java/org/rhq/sample/skeletonplugin/SamplePluginServerComponent.java:%5B39,43%5D>package > org.rhq.core.pluginapi.availability does not exist > > > [INFO] > ------------------------------------------------------------------------ > [INFO] For more information, run Maven with the -e switch > [INFO] > ------------------------------------------------------------------------ > [INFO] Total time: 20 seconds > [INFO] Finished at: Fri Jul 03 09:48:48 BRT 2009 > [INFO] Final Memory: 6M/15M > > The same error happens if I set test1 as a module in plugins' pom.xml and > build it from modules/plugins dir. > > > *2. The second trying was using Maven Archetype [2]* > > I did > > plugins$ mvn archetype:generate -DarchetypeGroupId=org.rhq > -DarchetypeArtifactId=rhq-plugin-archetype > -DarchetypeVersion=1.0.0.GA-DarchetypeRepository= > *http://snapshots.jboss.org/maven2*/ -Drhq-plugin-name=test2 > -DgroupId=my.second.test -DartifactId=test2 > -Dversion=*1.3.0-SNAPSHOT*-Dpackage=my.second.test > > but I had to change some arguments to get depended libs compatible with my > source tree. This should be clear in [2] instructions. > > test2 plugin was built and deployed successfully. WOW! > > 11:08:04,592 INFO [ProductPluginDeployer] Discovered agent plugin [test2] > 11:08:04,766 INFO [ProductPluginDeployer] Deploying [1] new or updated > agent plugins: [test2] > 11:08:05,217 INFO [ProductPluginDeployer] Plugin metadata updates are > complete: [test2] > > > *3. The third trying was using Plugin Generator * > > plugins$ java -jar rhq-pluginGen-1.2.2-jar-with-dependencies.jar > Please specify the plugin root category PLATFORM(P), SERVER(S), SERVICE(I), > i > Please specify its PackagePrefix: my.third.test > Please specify its FileSystemRoot: /Users/alegomes/Code/ > jboss.org/rhq-mssql/modules/plugins > Please specify its ComponentClass: ThirdComponent > Please specify its DiscoveryClass: ThirdDiscovery > Please specify if it should support Events (y/N): > Please specify its ParentType: > Please specify if it should support Monitoring (y/N): y > Please specify if it should support Operations (y/N): > Please specify if it should support Singleton (y/N): > Please specify if it should support ResourceConfiguration (y/N): > Please specify if it should support CreateChildren (y/N): y > Please specify if it should support UsesExternalJarsInPlugin (y/N): y > Please specify if it should support DeleteChildren (y/N): y > Please specify if it should support ManualAddOfChildren (y/N): y > Please specify if it should support UsePluginLifecycleListenerApi (y/N): > Please specify its Name: test3 > Please specify its Description: My third Test > > Do you want to add a child to test3? (y/N) > Don't forget to add your plugin to the parent pom.xml > > plugins$ cd test3 > test3 $ mvn package > [INFO] Scanning for projects... > [INFO] > ------------------------------------------------------------------------ > [ERROR] FATAL ERROR > [INFO] > ------------------------------------------------------------------------ > [INFO] Failed to resolve artifact. > > GroupId: org.rhq > ArtifactId: rhq-plugins-parent > Version: 1.2.0-SNAPSHOT > > Reason: Unable to download the artifact from any repository > > org.rhq:rhq-plugins-parent:pom:1.2.0-SNAPSHOT > > from the specified remote repositories: > central (http://repo1.maven.org/maven2) > > ... > [INFO] > ------------------------------------------------------------------------ > [INFO] Total time: 1 second > [INFO] Finished at: Tue Jul 07 11:48:59 BRT 2009 > [INFO] Final Memory: 1M/2M > [INFO] > ------------------------------------------------------------------------ > > Oh yes, I forgot, we need to change test3/pom.xml, replacing > > <version>1.2.0-SNAPSHOT</version><!-- TODO adjust RHQ version --> > > by > > <version>1.*3*.0-SNAPSHOT</version><!-- TODO adjust RHQ version --> > > What about showing at the end of plugin generation process the instruction > of changing pom.xml? > > Then, when I tried to deploy my brand new plugin, I got a problem: > > 19:07:05,942 INFO [ProductPluginDeployer] Discovered agent plugin [test3] > 19:07:05,977 INFO [ProductPluginDeployer] Deploying [1] new or updated > agent plugins: [test3] > 19:07:06,249 ERROR [PluginMetadataManager] Error transforming plugin > descriptor [test3]. > org.rhq.core.clientapi.agent.metadata.InvalidPluginDescriptorException: > Configuration properties are missing. Resource configurations must have at > least one group or one config-property as a child. > ... > 19:07:06,279 ERROR [ProductPluginDeployer] Failed to register RHQ plugin > file [test3-plugin-1.3.0-SNAPSHOT.jar] at [file:/Volumes/Data/Code/ > jboss.org/rhq-mssql/modules/enterprise/server/container/target/rhq-server-1.3.0-SNAPSHOT/jbossas/server/default/tmp/deploy/tmp2270423192953241509test3-plugin-1.3.0-SNAPSHOT.jar > ] > java.lang.Exception: Failed to load plugin [test3]. > > > Isn't it strange a generated code not deploying correctly? > > > [1] http://support.rhq-project.org/display/RHQ/Plugins+-+Skeleton+Plugin > [2] http://support.rhq-project.org/display/RHQ/Plugins+-+Archetype > > > Hope this helps somehow.... > > ------------------------------------------------------------------------ > > ------------------------------------------------------------------------------ > Enter the BlackBerry Developer Challenge > This is your chance to win up to $100,000 in prizes! For a limited time, > vendors submitting new applications to BlackBerry App World(TM) will have > the opportunity to enter the BlackBerry Developer Challenge. See full prize > details at: http://p.sf.net/sfu/Challenge > ------------------------------------------------------------------------ > > _______________________________________________ > Rhq-development mailing list > Rhq...@li... > https://lists.sourceforge.net/lists/listinfo/rhq-development > -- Ian Springer Sr. Software Developer JBoss Operations Network Red Hat ian...@re... |
From: Alexandre G. <ale...@gm...> - 2009-07-09 03:16:18
|
1. OK 2. Actually, it stopped working for me. >>>>>>>>> plugins alegomes$ mvn archetype:generate -DarchetypeGroupId=org.rhq -DarchetypeArtifactId=rhq-plugin-archetype -DarchetypeVersion=1.0.0.GA-DarchetypeRepository= http://snapshots.jboss.org/maven2 -Drhq-plugin-name=test2 -DgroupId=my.second.test -DartifactId=test2 -Dversion=1.3.0-SNAPSHOT -Dpackage=my.second.test [INFO] Scanning for projects... [INFO] ------------------------------------------------------------------------ [ERROR] FATAL ERROR [INFO] ------------------------------------------------------------------------ [INFO] Error building POM (may not be this project's POM). Project ID: unknown Reason: Could not find the model file '/Volumes/Data/Code/ jboss.org/rhq-mssql/modules/plugins/test2'. for project unknown [INFO] ------------------------------------------------------------------------ [INFO] Trace org.apache.maven.reactor.MavenExecutionException: Could not find the model file '/Volumes/Data/Code/jboss.org/rhq-mssql/modules/plugins/test2'. for project unknown at org.apache.maven.DefaultMaven.getProjects(DefaultMaven.java:378) at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:292) at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:129) at org.apache.maven.cli.MavenCli.main(MavenCli.java:287) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) at org.codehaus.classworlds.Launcher.main(Launcher.java:375) Caused by: org.apache.maven.project.ProjectBuildingException: Could not find the model file '/Volumes/Data/Code/jboss.org/rhq-mssql/modules/plugins/test2'. for project unknown at org.apache.maven.project.DefaultMavenProjectBuilder.readModel(DefaultMavenProjectBuilder.java:1557) at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromSourceFileInternal(DefaultMavenProjectBuilder.java:504) at org.apache.maven.project.DefaultMavenProjectBuilder.build(DefaultMavenProjectBuilder.java:198) at org.apache.maven.DefaultMaven.getProject(DefaultMaven.java:583) at org.apache.maven.DefaultMaven.collectProjects(DefaultMaven.java:461) at org.apache.maven.DefaultMaven.collectProjects(DefaultMaven.java:534) at org.apache.maven.DefaultMaven.getProjects(DefaultMaven.java:365) ... 11 more Caused by: java.io.FileNotFoundException: /Volumes/Data/Code/ jboss.org/rhq-mssql/modules/plugins/test2 (No such file or directory) at java.io.FileInputStream.open(Native Method) at java.io.FileInputStream.<init>(FileInputStream.java:106) at hidden.org.codehaus.plexus.util.xml.XmlReader.<init>(XmlReader.java:123) at hidden.org.codehaus.plexus.util.xml.XmlStreamReader.<init>(XmlStreamReader.java:67) at hidden.org.codehaus.plexus.util.ReaderFactory.newXmlReader(ReaderFactory.java:113) at org.apache.maven.project.DefaultMavenProjectBuilder.readModel(DefaultMavenProjectBuilder.java:1552) ... 17 more [INFO] ------------------------------------------------------------------------ [INFO] Total time: 15 seconds [INFO] Finished at: Wed Jul 08 22:48:28 BRT 2009 [INFO] Final Memory: 4M/8M [INFO] ------------------------------------------------------------------------ <<<<<<<<<<<<<<< 3.1. The need to change RHQ version in pom.xml is not yet clear after the generation questions. >>>>>>>>>>>>>>> plugins alegomes$ java -jar ../../../rhq-pluginGen-1.2.2-jar-with-dependencies.jar Please specify the plugin root category PLATFORM(P), SERVER(S), SERVICE(I), i Please specify its PackagePrefix: my.third.test Please specify its FileSystemRoot: /Users/alegomes/Code/ jboss.org/rhq-mssql/modules/plugins Please specify its ComponentClass: Test3Component Please specify its DiscoveryClass: Test3Discovery Please specify if it should support Events (y/N): Please specify its ParentType: Please specify if it should support Monitoring (y/N): y Please specify if it should support Operations (y/N): Please specify if it should support Singleton (y/N): Please specify if it should support ResourceConfiguration (y/N): Please specify if it should support CreateChildren (y/N): y Please specify if it should support UsesExternalJarsInPlugin (y/N): y Please specify if it should support DeleteChildren (y/N): y Please specify if it should support ManualAddOfChildren (y/N): y Please specify if it should support UsePluginLifecycleListenerApi (y/N): Please specify its Name: test3 Please specify its Description: My third test Do you want to add a child to test3? (y/N) Don't forget to add your plugin to the parent pom.xml alexandre-gomess-powerbook-g4-17:plugins alegomes$ cd test3 alexandre-gomess-powerbook-g4-17:test3 alegomes$ mvn package [INFO] Scanning for projects... [INFO] ------------------------------------------------------------------------ [ERROR] FATAL ERROR [INFO] ------------------------------------------------------------------------ [INFO] Failed to resolve artifact. GroupId: org.rhq ArtifactId: rhq-plugins-parent Version: 1.2.0-SNAPSHOT Reason: Unable to download the artifact from any repository org.rhq:rhq-plugins-parent:pom:1.2.0-SNAPSHOT from the specified remote repositories: central (http://repo1.maven.org/maven2) <<<<<<<<<<<< 3.2. Anyway, I couldn't test the generated plugin build and deploy yet, because of http://forums.rhq-project.org/viewtopic.php?f=5&t=183 []s |
From: Alexandre G. <ale...@gm...> - 2009-07-09 10:25:56
|
Hello Heiko, On Thu, Jul 9, 2009 at 4:51 AM, Heiko W.Rupp <hw...@re...> wrote: > > > 2. The second trying was using Maven Archetype [2] >> >> This is the one I meant as unspported > So, let's remove any reference to it from http://support.rhq-project.org/display/RHQ/RHQ+Plugin+Community 3. The third trying was using Plugin Generator >> > >> Isn't it strange a generated code not deploying correctly? >> > > > I know what you mean - I've meanwhile changed this to contain a dummy > property. > This is unfortunately a tradeoff between comfort (generate (dummies for) > everything ) and being annoyed by > the generator asking hundreds of questions. Some people rather want to open > rhq-plugin.xml in vi and edit > some stuff, while others just want everything being asked. I see. But I think it's important for newbies. As long as it's their first try on plugin development, guessing what do they have to do to get their plugin deployed may be a hard task. > > But thanks a lot for your feedback. > Please, let me know if I start to bother you guys ;-) []s |