You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by rm...@apache.org on 2014/02/23 21:26:55 UTC
svn commit: r1571084 -
/tomee/tomee/trunk/maven/tomee-maven-plugin/src/main/java/org/apache/openejb/maven/plugin/AbstractTomEEMojo.java
Author: rmannibucau
Date: Sun Feb 23 20:26:55 2014
New Revision: 1571084
URL: http://svn.apache.org/r1571084
Log:
TOMEE-1132 javaagents in tomee mvn plugin to be able to use mvn coordinates
Modified:
tomee/tomee/trunk/maven/tomee-maven-plugin/src/main/java/org/apache/openejb/maven/plugin/AbstractTomEEMojo.java
Modified: tomee/tomee/trunk/maven/tomee-maven-plugin/src/main/java/org/apache/openejb/maven/plugin/AbstractTomEEMojo.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/maven/tomee-maven-plugin/src/main/java/org/apache/openejb/maven/plugin/AbstractTomEEMojo.java?rev=1571084&r1=1571083&r2=1571084&view=diff
==============================================================================
--- tomee/tomee/trunk/maven/tomee-maven-plugin/src/main/java/org/apache/openejb/maven/plugin/AbstractTomEEMojo.java (original)
+++ tomee/tomee/trunk/maven/tomee-maven-plugin/src/main/java/org/apache/openejb/maven/plugin/AbstractTomEEMojo.java Sun Feb 23 20:26:55 2014
@@ -22,6 +22,8 @@ import org.apache.maven.artifact.reposit
import org.apache.maven.artifact.repository.ArtifactRepositoryPolicy;
import org.apache.maven.artifact.repository.DefaultArtifactRepository;
import org.apache.maven.artifact.repository.layout.DefaultRepositoryLayout;
+import org.apache.maven.artifact.resolver.ArtifactNotFoundException;
+import org.apache.maven.artifact.resolver.ArtifactResolutionException;
import org.apache.maven.artifact.resolver.ArtifactResolver;
import org.apache.maven.plugin.MojoExecutionException;
import org.apache.maven.plugin.MojoFailureException;
@@ -206,6 +208,9 @@ public abstract class AbstractTomEEMojo
protected List<String> libs;
@Parameter
+ protected List<String> javaagents;
+
+ @Parameter
protected List<String> webapps;
@Parameter
@@ -469,28 +474,8 @@ public abstract class AbstractTomEEMojo
}
}
} else {
- final String[] infos = lib.split(":");
- final String classifier;
- final String type;
- if (infos.length < 3) {
- throw new TomEEException("format for librairies should be <groupId>:<artifactId>:<version>[:<type>[:<classifier>]]");
- }
- if (infos.length >= 4) {
- type = infos[3];
- } else {
- type = defaultType;
- }
- if (infos.length == 5) {
- classifier = infos[4];
- } else {
- classifier = null;
- }
-
try {
- final Artifact artifact = factory.createDependencyArtifact(infos[0], infos[1], createFromVersion(infos[2]), type, classifier, SCOPE_COMPILE);
- resolver.resolve(artifact, remoteRepos, local);
- final File file = artifact.getFile();
-
+ final File file = mvnToFile(lib, defaultType);
if (!unzip) {
final File dest;
if (extractedName == null) {
@@ -519,6 +504,29 @@ public abstract class AbstractTomEEMojo
}
}
+ private File mvnToFile(final String lib, final String defaultType) throws ArtifactResolutionException, ArtifactNotFoundException {
+ final String[] infos = lib.split(":");
+ final String classifier;
+ final String type;
+ if (infos.length < 3) {
+ throw new TomEEException("format for librairies should be <groupId>:<artifactId>:<version>[:<type>[:<classifier>]]");
+ }
+ if (infos.length >= 4) {
+ type = infos[3];
+ } else {
+ type = defaultType;
+ }
+ if (infos.length == 5) {
+ classifier = infos[4];
+ } else {
+ classifier = null;
+ }
+
+ final Artifact artifact = factory.createDependencyArtifact(infos[0], infos[1], createFromVersion(infos[2]), type, classifier, SCOPE_COMPILE);
+ resolver.resolve(artifact, remoteRepos, local);
+ return artifact.getFile();
+ }
+
private void copyWar() {
if ("pom".equals(packaging)) {
return;
@@ -740,6 +748,20 @@ public abstract class AbstractTomEEMojo
if (args != null) {
strings.addAll(Arrays.asList(args.split(" ")));
}
+ if (javaagents != null) {
+ for (final String javaagent : javaagents) {
+ if (!new File(javaagent).isFile()) {
+ try {
+ strings.add("-javaagent:" + mvnToFile(javaagent, "jar"));
+ } catch (final Exception e) {
+ getLog().warn("Can't find " + javaagent);
+ strings.add("-javaagent:" + javaagent);
+ }
+ } else {
+ strings.add("-javaagent:" + javaagent);
+ }
+ }
+ }
if (forceReloadable) {
strings.add("-Dtomee.force-reloadable=true");