[jbosstools-dev] Question on ASTools profiling

Martes Wigglesworth mwiggles at redhat.com
Wed Nov 6 12:47:30 EST 2013


Greetings Rob. 

I am not sure on which branch you are working, so I will probably need to research it a bit, however what I do when working on something like the OpenShift plugin, was the following: 

1)I pull down eclipse kepler (just the one from Eclipse, because I found that in my work with the OpenShift wizard, I needed stuff that was not available in bare JBDS/JBDT from JBoss Developer Studio.) 

2) I installed a trunk nightly build into the "add software" menu, to pull down JBoss Cloud Development Tools. 
In case the attachment gets removed, the url to include within the location bard for "Add New Software" is as follows: 

3) I pulled down the fork to the feature branch I intended on working, to my local file system. 

4) I went into eGit, and told it to "clone a local repository" and then selected the correct file system location. 

*All these steps were associated with getting the build environment setup for use with the following steps. 

5) Once you have the branch populated into the eGit Repository view, you will want to "import projects" however, such as in the case for OpenShift-java-client work, the eGit import process leaving something missing as far as recognition of the maven project, so I have to import it as an existing maven project, and all is fine. However, you will probably need to read any README.md that exists as a wiki howto. 

*Now comes the maven dependency, which seems not to be required when using only Eclipse dev environment, and all. 

6) The following needs to be inserted into ~/.m2/settings.xml: 
I. We need to create a profile such that maven will know from where it should pull dependencies for JBoss Tools work. 
<!-- JBossTools Development --> 
<profile> 
<id>jboss-tools-dev-repos</id> 
<repositories> 
<!-- To resolve parent artifact --> 
<repository> 
<id>jboss-public-repository-group</id> 
<name>JBoss Public Repository Group</name> 
<url>http://repository.jboss.org/nexus/content/groups/public/</url > 
</repository> 
<repository> 
<id>jboss-snapshots-repository</id> 
<name>JBoss Snapshots Repository</name> 
<url>https://repository.jboss.org/nexus/content/repositories/snapshots/</url > 
</repository> 
</repositories> 
<pluginRepositories> 
<!-- To resolve parent artifact --> 
<pluginRepository> 
<id>jboss-public-repository-group</id> 
<name>JBoss Public Repository Group</name> 
<url>http://repository.jboss.org/nexus/content/groups/public/</url > 
</pluginRepository> 
<pluginRepository> 
<id>jboss-snapshots-repository</id> 
<name>JBoss Snapshots Repository</name> 
<url>https://repository.jboss.org/nexus/content/repositories/snapshots/</url > 
</pluginRepository> 
</pluginRepositories> 
</profile> 


B) The profile needs to be listed as "active" by including an artifact within the <activeProfiles> section 


<activeProfiles> 
<activeProfile>jboss-tools-dev-repos</activeProfile> 
</activeProfiles> 
8) Some aspects of jboss tools requires them to be installed, before the entire application will run, so run mvn clean verify which should create the missing artifacts, such as in the case for java-client/lib/*-SNAPSHOT.jar 

9) When you are ready to test something out, you run debug mode, using the "Eclipse Application" configuration. This configuration will populate an entire Eclipse environment on top of the run that is actually being used, which will have your new Plugins enabled, and ready for testing. 

I am putting this work into a mojo page so that others won't have as much trouble getting started with this type of eclipse plugin development, however, for now, if you have any further questions, then feel free to email me, as well. 

Respectfully, 



Martes G Wigglesworth 
Consultant - Middleware Engineer 
Red Hat Consulting 
Red Hat, Inc. 
Office Phone: 804 343 6084 - 8136084 
Office Email: mwiggles at redhat.com 

----- Original Message -----

From: "Rob Stryker" <rstryker at redhat.com> 
To: "jbosstools-dev jbosstools-dev" <jbosstools-dev at lists.jboss.org>, "Snjezana Peco" <snjezana.peco at redhat.com> 
Sent: Wednesday, November 6, 2013 9:43:34 AM 
Subject: [jbosstools-dev] Question on ASTools profiling 

This is mostly a question for Snjezana, but anyone else who knows feel 
free to chime in: 

I noticed in AbstractJBossStartLaunchConfiguration is the following 
block of code: 

if (ILaunchManager.PROFILE_MODE.equals(mode)) { 
try { 
ServerProfilerDelegate.configureProfiling(launch, vm, 
runConfig, monitor); 

I'm attempting the beginnings of trying to refactor a lot of the ASTools 
launching behavior, and I need to know what kind of changes these 
profile delegates will make to the launch. I'm not sure I have the 
proper environment up, but, if you could tell me how to test it and use 
it, I'd be super grateful. 

It's always a bit dangerous when touching or moving code that you're not 
familiar with how it works. 

This block of code is also a bit inconvenient since it happens after 95% 
of the launch code but before the vmrunner.run(etc), so it requires us 
to basically copy a superclass's entire 300 line method in order to 
sneak the profiling bit in before the launch is run. 

Anyway, any advice on how this works, what kinda changes it can make to 
the launch, or how to set up my env to test it, would be very helpful. 

_______________________________________________ 
jbosstools-dev mailing list 
jbosstools-dev at lists.jboss.org 
https://lists.jboss.org/mailman/listinfo/jbosstools-dev 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jbosstools-dev/attachments/20131106/77756c66/attachment-0001.html 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: JBossTools-nightly-build-eclipse-kepler.png
Type: image/png
Size: 68762 bytes
Desc: not available
Url : http://lists.jboss.org/pipermail/jbosstools-dev/attachments/20131106/77756c66/attachment-0001.png 


More information about the jbosstools-dev mailing list