You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@accumulo.apache.org by ct...@apache.org on 2013/06/14 02:11:56 UTC
svn commit: r1492911 - in /accumulo/trunk:
conf/examples/1GB/native-standalone/ conf/examples/1GB/standalone/
conf/examples/2GB/native-standalone/ conf/examples/2GB/standalone/
conf/examples/3GB/native-standalone/ conf/examples/3GB/standalone/
conf/exa...
Author: ctubbsii
Date: Fri Jun 14 00:11:55 2013
New Revision: 1492911
URL: http://svn.apache.org/r1492911
Log:
ACCUMULO-1396 simplify specifying target directories from the maven workspace, for developers; updated example files
Modified:
accumulo/trunk/conf/examples/1GB/native-standalone/accumulo-site.xml
accumulo/trunk/conf/examples/1GB/standalone/accumulo-site.xml
accumulo/trunk/conf/examples/2GB/native-standalone/accumulo-site.xml
accumulo/trunk/conf/examples/2GB/standalone/accumulo-site.xml
accumulo/trunk/conf/examples/3GB/native-standalone/accumulo-site.xml
accumulo/trunk/conf/examples/3GB/standalone/accumulo-site.xml
accumulo/trunk/conf/examples/512MB/native-standalone/accumulo-site.xml
accumulo/trunk/conf/examples/512MB/standalone/accumulo-site.xml
accumulo/trunk/conf/examples/vfs-classloader/accumulo-site.xml
accumulo/trunk/core/src/main/java/org/apache/accumulo/core/conf/Property.java
accumulo/trunk/start/src/main/java/org/apache/accumulo/start/classloader/AccumuloClassLoader.java
Modified: accumulo/trunk/conf/examples/1GB/native-standalone/accumulo-site.xml
URL: http://svn.apache.org/viewvc/accumulo/trunk/conf/examples/1GB/native-standalone/accumulo-site.xml?rev=1492911&r1=1492910&r2=1492911&view=diff
==============================================================================
--- accumulo/trunk/conf/examples/1GB/native-standalone/accumulo-site.xml (original)
+++ accumulo/trunk/conf/examples/1GB/native-standalone/accumulo-site.xml Fri Jun 14 00:11:55 2013
@@ -88,6 +88,11 @@
</property>
<property>
+ <name>general.maven.project.basedir</name>
+ <value></value>
+ </property>
+
+ <property>
<name>general.classpaths</name>
<!--
Add the following for hadoop-2.0
@@ -98,15 +103,10 @@
$HADOOP_PREFIX/share/hadoop/yarn/.*.jar,
-->
<value>
- $ACCUMULO_HOME/server/target/classes/,
$ACCUMULO_HOME/lib/accumulo-server.jar,
- $ACCUMULO_HOME/core/target/classes/,
$ACCUMULO_HOME/lib/accumulo-core.jar,
- $ACCUMULO_HOME/start/target/classes/,
$ACCUMULO_HOME/lib/accumulo-start.jar,
- $ACCUMULO_HOME/fate/target/classes/,
$ACCUMULO_HOME/lib/accumulo-fate.jar,
- $ACCUMULO_HOME/proxy/target/classes/,
$ACCUMULO_HOME/lib/accumulo-proxy.jar,
$ACCUMULO_HOME/lib/[^.].*.jar,
$ZOOKEEPER_HOME/zookeeper[^.].*.jar,
@@ -114,8 +114,6 @@
$HADOOP_PREFIX/[^.].*.jar,
$HADOOP_PREFIX/lib/[^.].*.jar,
</value>
- <description>Classpaths that accumulo checks for updates and class files.
- When using the Security Manager, please remove the ".../target/classes/" values.
- </description>
+ <description>Classpaths that accumulo checks for updates and class files.</description>
</property>
</configuration>
Modified: accumulo/trunk/conf/examples/1GB/standalone/accumulo-site.xml
URL: http://svn.apache.org/viewvc/accumulo/trunk/conf/examples/1GB/standalone/accumulo-site.xml?rev=1492911&r1=1492910&r2=1492911&view=diff
==============================================================================
--- accumulo/trunk/conf/examples/1GB/standalone/accumulo-site.xml (original)
+++ accumulo/trunk/conf/examples/1GB/standalone/accumulo-site.xml Fri Jun 14 00:11:55 2013
@@ -88,6 +88,11 @@
</property>
<property>
+ <name>general.maven.project.basedir</name>
+ <value></value>
+ </property>
+
+ <property>
<name>general.classpaths</name>
<!--
Add the following for hadoop-2.0
@@ -98,15 +103,10 @@
$HADOOP_PREFIX/share/hadoop/yarn/.*.jar,
-->
<value>
- $ACCUMULO_HOME/server/target/classes/,
$ACCUMULO_HOME/lib/accumulo-server.jar,
- $ACCUMULO_HOME/core/target/classes/,
$ACCUMULO_HOME/lib/accumulo-core.jar,
- $ACCUMULO_HOME/start/target/classes/,
$ACCUMULO_HOME/lib/accumulo-start.jar,
- $ACCUMULO_HOME/fate/target/classes/,
$ACCUMULO_HOME/lib/accumulo-fate.jar,
- $ACCUMULO_HOME/proxy/target/classes/,
$ACCUMULO_HOME/lib/accumulo-proxy.jar,
$ACCUMULO_HOME/lib/[^.].*.jar,
$ZOOKEEPER_HOME/zookeeper[^.].*.jar,
@@ -114,8 +114,6 @@
$HADOOP_PREFIX/[^.].*.jar,
$HADOOP_PREFIX/lib/[^.].*.jar,
</value>
- <description>Classpaths that accumulo checks for updates and class files.
- When using the Security Manager, please remove the ".../target/classes/" values.
- </description>
+ <description>Classpaths that accumulo checks for updates and class files.</description>
</property>
</configuration>
Modified: accumulo/trunk/conf/examples/2GB/native-standalone/accumulo-site.xml
URL: http://svn.apache.org/viewvc/accumulo/trunk/conf/examples/2GB/native-standalone/accumulo-site.xml?rev=1492911&r1=1492910&r2=1492911&view=diff
==============================================================================
--- accumulo/trunk/conf/examples/2GB/native-standalone/accumulo-site.xml (original)
+++ accumulo/trunk/conf/examples/2GB/native-standalone/accumulo-site.xml Fri Jun 14 00:11:55 2013
@@ -78,6 +78,11 @@
</property>
<property>
+ <name>general.maven.project.basedir</name>
+ <value></value>
+ </property>
+
+ <property>
<name>general.classpaths</name>
<!--
Add the following for hadoop-2.0
@@ -88,15 +93,10 @@
$HADOOP_PREFIX/share/hadoop/yarn/.*.jar,
-->
<value>
- $ACCUMULO_HOME/server/target/classes/,
$ACCUMULO_HOME/lib/accumulo-server.jar,
- $ACCUMULO_HOME/core/target/classes/,
$ACCUMULO_HOME/lib/accumulo-core.jar,
- $ACCUMULO_HOME/start/target/classes/,
$ACCUMULO_HOME/lib/accumulo-start.jar,
- $ACCUMULO_HOME/fate/target/classes/,
$ACCUMULO_HOME/lib/accumulo-fate.jar,
- $ACCUMULO_HOME/proxy/target/classes/,
$ACCUMULO_HOME/lib/accumulo-proxy.jar,
$ACCUMULO_HOME/lib/[^.].*.jar,
$ZOOKEEPER_HOME/zookeeper[^.].*.jar,
@@ -104,8 +104,6 @@
$HADOOP_PREFIX/[^.].*.jar,
$HADOOP_PREFIX/lib/[^.].*.jar,
</value>
- <description>Classpaths that accumulo checks for updates and class files.
- When using the Security Manager, please remove the ".../target/classes/" values.
- </description>
+ <description>Classpaths that accumulo checks for updates and class files.</description>
</property>
</configuration>
Modified: accumulo/trunk/conf/examples/2GB/standalone/accumulo-site.xml
URL: http://svn.apache.org/viewvc/accumulo/trunk/conf/examples/2GB/standalone/accumulo-site.xml?rev=1492911&r1=1492910&r2=1492911&view=diff
==============================================================================
--- accumulo/trunk/conf/examples/2GB/standalone/accumulo-site.xml (original)
+++ accumulo/trunk/conf/examples/2GB/standalone/accumulo-site.xml Fri Jun 14 00:11:55 2013
@@ -91,6 +91,11 @@
</property>
<property>
+ <name>general.maven.project.basedir</name>
+ <value></value>
+ </property>
+
+ <property>
<name>general.classpaths</name>
<!--
Add the following for hadoop-2.0
@@ -101,15 +106,10 @@
$HADOOP_PREFIX/share/hadoop/yarn/.*.jar,
-->
<value>
- $ACCUMULO_HOME/server/target/classes/,
$ACCUMULO_HOME/lib/accumulo-server.jar,
- $ACCUMULO_HOME/core/target/classes/,
$ACCUMULO_HOME/lib/accumulo-core.jar,
- $ACCUMULO_HOME/start/target/classes/,
$ACCUMULO_HOME/lib/accumulo-start.jar,
- $ACCUMULO_HOME/fate/target/classes/,
$ACCUMULO_HOME/lib/accumulo-fate.jar,
- $ACCUMULO_HOME/proxy/target/classes/,
$ACCUMULO_HOME/lib/accumulo-proxy.jar,
$ACCUMULO_HOME/lib/[^.].*.jar,
$ZOOKEEPER_HOME/zookeeper[^.].*.jar,
@@ -117,8 +117,6 @@
$HADOOP_PREFIX/[^.].*.jar,
$HADOOP_PREFIX/lib/[^.].*.jar,
</value>
- <description>Classpaths that accumulo checks for updates and class files.
- When using the Security Manager, please remove the ".../target/classes/" values.
- </description>
+ <description>Classpaths that accumulo checks for updates and class files.</description>
</property>
</configuration>
Modified: accumulo/trunk/conf/examples/3GB/native-standalone/accumulo-site.xml
URL: http://svn.apache.org/viewvc/accumulo/trunk/conf/examples/3GB/native-standalone/accumulo-site.xml?rev=1492911&r1=1492910&r2=1492911&view=diff
==============================================================================
--- accumulo/trunk/conf/examples/3GB/native-standalone/accumulo-site.xml (original)
+++ accumulo/trunk/conf/examples/3GB/native-standalone/accumulo-site.xml Fri Jun 14 00:11:55 2013
@@ -73,6 +73,11 @@
</property>
<property>
+ <name>general.maven.project.basedir</name>
+ <value></value>
+ </property>
+
+ <property>
<name>general.classpaths</name>
<!--
Add the following for hadoop-2.0
@@ -83,15 +88,10 @@
$HADOOP_PREFIX/share/hadoop/yarn/.*.jar,
-->
<value>
- $ACCUMULO_HOME/server/target/classes/,
$ACCUMULO_HOME/lib/accumulo-server.jar,
- $ACCUMULO_HOME/core/target/classes/,
$ACCUMULO_HOME/lib/accumulo-core.jar,
- $ACCUMULO_HOME/start/target/classes/,
$ACCUMULO_HOME/lib/accumulo-start.jar,
- $ACCUMULO_HOME/fate/target/classes/,
$ACCUMULO_HOME/lib/accumulo-fate.jar,
- $ACCUMULO_HOME/proxy/target/classes/,
$ACCUMULO_HOME/lib/accumulo-proxy.jar,
$ACCUMULO_HOME/lib/[^.].*.jar,
$ZOOKEEPER_HOME/zookeeper[^.].*.jar,
@@ -99,8 +99,6 @@
$HADOOP_PREFIX/[^.].*.jar,
$HADOOP_PREFIX/lib/[^.].*.jar,
</value>
- <description>Classpaths that accumulo checks for updates and class files.
- When using the Security Manager, please remove the ".../target/classes/" values.
- </description>
+ <description>Classpaths that accumulo checks for updates and class files.</description>
</property>
</configuration>
Modified: accumulo/trunk/conf/examples/3GB/standalone/accumulo-site.xml
URL: http://svn.apache.org/viewvc/accumulo/trunk/conf/examples/3GB/standalone/accumulo-site.xml?rev=1492911&r1=1492910&r2=1492911&view=diff
==============================================================================
--- accumulo/trunk/conf/examples/3GB/standalone/accumulo-site.xml (original)
+++ accumulo/trunk/conf/examples/3GB/standalone/accumulo-site.xml Fri Jun 14 00:11:55 2013
@@ -78,6 +78,11 @@
</property>
<property>
+ <name>general.maven.project.basedir</name>
+ <value></value>
+ </property>
+
+ <property>
<name>general.classpaths</name>
<!--
Add the following for hadoop-2.0
@@ -88,15 +93,10 @@
$HADOOP_PREFIX/share/hadoop/yarn/.*.jar,
-->
<value>
- $ACCUMULO_HOME/server/target/classes/,
$ACCUMULO_HOME/lib/accumulo-server.jar,
- $ACCUMULO_HOME/core/target/classes/,
$ACCUMULO_HOME/lib/accumulo-core.jar,
- $ACCUMULO_HOME/start/target/classes/,
$ACCUMULO_HOME/lib/accumulo-start.jar,
- $ACCUMULO_HOME/fate/target/classes/,
$ACCUMULO_HOME/lib/accumulo-fate.jar,
- $ACCUMULO_HOME/proxy/target/classes/,
$ACCUMULO_HOME/lib/accumulo-proxy.jar,
$ACCUMULO_HOME/lib/[^.].*.jar,
$ZOOKEEPER_HOME/zookeeper[^.].*.jar,
@@ -104,8 +104,6 @@
$HADOOP_PREFIX/[^.].*.jar,
$HADOOP_PREFIX/lib/[^.].*.jar,
</value>
- <description>Classpaths that accumulo checks for updates and class files.
- When using the Security Manager, please remove the ".../target/classes/" values.
- </description>
+ <description>Classpaths that accumulo checks for updates and class files.</description>
</property>
</configuration>
Modified: accumulo/trunk/conf/examples/512MB/native-standalone/accumulo-site.xml
URL: http://svn.apache.org/viewvc/accumulo/trunk/conf/examples/512MB/native-standalone/accumulo-site.xml?rev=1492911&r1=1492910&r2=1492911&view=diff
==============================================================================
--- accumulo/trunk/conf/examples/512MB/native-standalone/accumulo-site.xml (original)
+++ accumulo/trunk/conf/examples/512MB/native-standalone/accumulo-site.xml Fri Jun 14 00:11:55 2013
@@ -83,6 +83,11 @@
</property>
<property>
+ <name>general.maven.project.basedir</name>
+ <value></value>
+ </property>
+
+ <property>
<name>general.classpaths</name>
<!--
Add the following for hadoop-2.0
@@ -93,15 +98,10 @@
$HADOOP_PREFIX/share/hadoop/yarn/.*.jar,
-->
<value>
- $ACCUMULO_HOME/server/target/classes/,
$ACCUMULO_HOME/lib/accumulo-server.jar,
- $ACCUMULO_HOME/core/target/classes/,
$ACCUMULO_HOME/lib/accumulo-core.jar,
- $ACCUMULO_HOME/start/target/classes/,
$ACCUMULO_HOME/lib/accumulo-start.jar,
- $ACCUMULO_HOME/fate/target/classes/,
$ACCUMULO_HOME/lib/accumulo-fate.jar,
- $ACCUMULO_HOME/proxy/target/classes/,
$ACCUMULO_HOME/lib/accumulo-proxy.jar,
$ACCUMULO_HOME/lib/[^.].*.jar,
$ZOOKEEPER_HOME/zookeeper[^.].*.jar,
@@ -109,8 +109,6 @@
$HADOOP_PREFIX/[^.].*.jar,
$HADOOP_PREFIX/lib/[^.].*.jar,
</value>
- <description>Classpaths that accumulo checks for updates and class files.
- When using the Security Manager, please remove the ".../target/classes/" values.
- </description>
+ <description>Classpaths that accumulo checks for updates and class files.</description>
</property>
</configuration>
Modified: accumulo/trunk/conf/examples/512MB/standalone/accumulo-site.xml
URL: http://svn.apache.org/viewvc/accumulo/trunk/conf/examples/512MB/standalone/accumulo-site.xml?rev=1492911&r1=1492910&r2=1492911&view=diff
==============================================================================
--- accumulo/trunk/conf/examples/512MB/standalone/accumulo-site.xml (original)
+++ accumulo/trunk/conf/examples/512MB/standalone/accumulo-site.xml Fri Jun 14 00:11:55 2013
@@ -89,6 +89,11 @@
</property>
<property>
+ <name>general.maven.project.basedir</name>
+ <value></value>
+ </property>
+
+ <property>
<name>general.classpaths</name>
<!--
Add the following for hadoop-2.0
@@ -99,15 +104,10 @@
$HADOOP_PREFIX/share/hadoop/yarn/.*.jar,
-->
<value>
- $ACCUMULO_HOME/server/target/classes/,
$ACCUMULO_HOME/lib/accumulo-server.jar,
- $ACCUMULO_HOME/core/target/classes/,
$ACCUMULO_HOME/lib/accumulo-core.jar,
- $ACCUMULO_HOME/start/target/classes/,
$ACCUMULO_HOME/lib/accumulo-start.jar,
- $ACCUMULO_HOME/fate/target/classes/,
$ACCUMULO_HOME/lib/accumulo-fate.jar,
- $ACCUMULO_HOME/proxy/target/classes/,
$ACCUMULO_HOME/lib/accumulo-proxy.jar,
$ACCUMULO_HOME/lib/[^.].*.jar,
$ZOOKEEPER_HOME/zookeeper[^.].*.jar,
@@ -115,8 +115,6 @@
$HADOOP_PREFIX/[^.].*.jar,
$HADOOP_PREFIX/lib/[^.].*.jar,
</value>
- <description>Classpaths that accumulo checks for updates and class files.
- When using the Security Manager, please remove the ".../target/classes/" values.
- </description>
+ <description>Classpaths that accumulo checks for updates and class files.</description>
</property>
</configuration>
Modified: accumulo/trunk/conf/examples/vfs-classloader/accumulo-site.xml
URL: http://svn.apache.org/viewvc/accumulo/trunk/conf/examples/vfs-classloader/accumulo-site.xml?rev=1492911&r1=1492910&r2=1492911&view=diff
==============================================================================
--- accumulo/trunk/conf/examples/vfs-classloader/accumulo-site.xml (original)
+++ accumulo/trunk/conf/examples/vfs-classloader/accumulo-site.xml Fri Jun 14 00:11:55 2013
@@ -83,6 +83,11 @@
</property>
<property>
+ <name>general.maven.project.basedir</name>
+ <value></value>
+ </property>
+
+ <property>
<name>general.classpaths</name>
<!--
Add the following for hadoop-2.0
@@ -93,15 +98,10 @@
$HADOOP_PREFIX/share/hadoop/yarn/.*.jar,
-->
<value>
- $ACCUMULO_HOME/server/target/classes/,
$ACCUMULO_HOME/lib/accumulo-server.jar,
- $ACCUMULO_HOME/core/target/classes/,
$ACCUMULO_HOME/lib/accumulo-core.jar,
- $ACCUMULO_HOME/start/target/classes/,
$ACCUMULO_HOME/lib/accumulo-start.jar,
- $ACCUMULO_HOME/fate/target/classes/,
$ACCUMULO_HOME/lib/accumulo-fate.jar,
- $ACCUMULO_HOME/proxy/target/classes/,
$ACCUMULO_HOME/lib/accumulo-proxy.jar,
$ACCUMULO_HOME/lib/[^.].*.jar,
$ZOOKEEPER_HOME/zookeeper[^.].*.jar,
@@ -109,9 +109,7 @@
$HADOOP_PREFIX/[^.].*.jar,
$HADOOP_PREFIX/lib/[^.].*.jar,
</value>
- <description>Classpaths that accumulo checks for updates and class files.
- When using the Security Manager, please remove the ".../target/classes/" values.
- </description>
+ <description>Classpaths that accumulo checks for updates and class files.</description>
</property>
<!-- VFS ClassLoader Settings -->
Modified: accumulo/trunk/core/src/main/java/org/apache/accumulo/core/conf/Property.java
URL: http://svn.apache.org/viewvc/accumulo/trunk/core/src/main/java/org/apache/accumulo/core/conf/Property.java?rev=1492911&r1=1492910&r2=1492911&view=diff
==============================================================================
--- accumulo/trunk/core/src/main/java/org/apache/accumulo/core/conf/Property.java (original)
+++ accumulo/trunk/core/src/main/java/org/apache/accumulo/core/conf/Property.java Fri Jun 14 00:11:55 2013
@@ -364,7 +364,14 @@ public enum Property {
@Interpolated
VFS_CLASSLOADER_CACHE_DIR(AccumuloVFSClassLoader.VFS_CACHE_DIR, "${java.io.tmpdir}" + File.separator + "accumulo-vfs-cache-${user.name}",
PropertyType.ABSOLUTEPATH, "Directory to use for the vfs cache. The cache will keep a soft reference to all of the classes loaded in the VM."
- + " This should be on local disk on each node with sufficient space. It defaults to ${java.io.tmpdir}/accumulo-vfs-cache-${user.name}");
+ + " This should be on local disk on each node with sufficient space. It defaults to ${java.io.tmpdir}/accumulo-vfs-cache-${user.name}"),
+
+ @Interpolated
+ @Experimental
+ GENERAL_MAVEN_PROJECT_BASEDIR(AccumuloClassLoader.MAVEN_PROJECT_BASEDIR_PROPERTY_NAME, AccumuloClassLoader.DEFAULT_MAVEN_PROJECT_BASEDIR_VALUE,
+ PropertyType.ABSOLUTEPATH, "Set this to automatically add maven target/classes directories to your dynamic classpath"),
+
+ ;
private String key, defaultValue, description;
private PropertyType type;
Modified: accumulo/trunk/start/src/main/java/org/apache/accumulo/start/classloader/AccumuloClassLoader.java
URL: http://svn.apache.org/viewvc/accumulo/trunk/start/src/main/java/org/apache/accumulo/start/classloader/AccumuloClassLoader.java?rev=1492911&r1=1492910&r2=1492911&view=diff
==============================================================================
--- accumulo/trunk/start/src/main/java/org/apache/accumulo/start/classloader/AccumuloClassLoader.java (original)
+++ accumulo/trunk/start/src/main/java/org/apache/accumulo/start/classloader/AccumuloClassLoader.java Fri Jun 14 00:11:55 2013
@@ -25,7 +25,10 @@ import java.net.URISyntaxException;
import java.net.URL;
import java.net.URLClassLoader;
import java.util.ArrayList;
+import java.util.Collections;
import java.util.Map;
+import java.util.Set;
+import java.util.TreeSet;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
@@ -45,6 +48,7 @@ public class AccumuloClassLoader {
public static final String CLASSPATH_PROPERTY_NAME = "general.classpaths";
+ /* @formatter:off */
public static final String ACCUMULO_CLASSPATH_VALUE =
"$ACCUMULO_HOME/conf,\n" +
"$ACCUMULO_HOME/lib/[^.].*.jar,\n" +
@@ -57,6 +61,10 @@ public class AccumuloClassLoader {
"$HADOOP_PREFIX/share/hadoop/hdfs/.*.jar,\n" +
"$HADOOP_PREFIX/share/hadoop/mapreduce/.*.jar,\n"
;
+ /* @formatter:on */
+
+ public static final String MAVEN_PROJECT_BASEDIR_PROPERTY_NAME = "general.maven.project.basedir";
+ public static final String DEFAULT_MAVEN_PROJECT_BASEDIR_VALUE = "";
private static String SITE_CONF;
@@ -208,6 +216,8 @@ public class AccumuloClassLoader {
return new ArrayList<URL>();
String[] cps = replaceEnvVars(cp, System.getenv()).split(",");
ArrayList<URL> urls = new ArrayList<URL>();
+ for (String classpath : getMavenClasspaths())
+ addUrl(classpath, urls);
for (String classpath : cps) {
if (!classpath.startsWith("#")) {
addUrl(classpath, urls);
@@ -216,6 +226,27 @@ public class AccumuloClassLoader {
return urls;
}
+ private static Set<String> getMavenClasspaths() {
+ String baseDirname = AccumuloClassLoader.getAccumuloString(MAVEN_PROJECT_BASEDIR_PROPERTY_NAME, DEFAULT_MAVEN_PROJECT_BASEDIR_VALUE);
+ if (baseDirname == null || baseDirname.trim().isEmpty())
+ return Collections.emptySet();
+ Set<String> paths = new TreeSet<String>();
+ findMavenTargetClasses(paths, new File(baseDirname.trim()), 0);
+ return paths;
+ }
+
+ private static void findMavenTargetClasses(Set<String> paths, File file, int depth) {
+ if (depth > 3)
+ return;
+ if (file.isDirectory()) {
+ File[] children = file.listFiles();
+ for (File child : children)
+ findMavenTargetClasses(paths, child, depth + 1);
+ } else if ("pom.xml".equals(file.getName())) {
+ paths.add(file.getParentFile().getAbsolutePath() + File.separator + "target" + File.separator + "classes");
+ }
+ }
+
public static synchronized ClassLoader getClassLoader() throws IOException {
if (classloader == null) {
ArrayList<URL> urls = findAccumuloURLs();