You are viewing a plain text version of this content. The canonical link for it is here.
Posted to mapreduce-commits@hadoop.apache.org by tu...@apache.org on 2011/12/05 19:02:47 UTC
svn commit: r1210548 - in /hadoop/common/trunk/hadoop-mapreduce-project:
CHANGES.txt
hadoop-mapreduce-client/hadoop-mapreduce-client-common/src/main/java/org/apache/hadoop/mapreduce/v2/util/MRApps.java
Author: tucu
Date: Mon Dec 5 18:02:47 2011
New Revision: 1210548
URL: http://svn.apache.org/viewvc?rev=1210548&view=rev
Log:
MAPREDUCE-3389. MRApps loads the 'mrapp-generated-classpath' file with classpath from the build machine. (tucu)
Modified:
hadoop/common/trunk/hadoop-mapreduce-project/CHANGES.txt
hadoop/common/trunk/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-common/src/main/java/org/apache/hadoop/mapreduce/v2/util/MRApps.java
Modified: hadoop/common/trunk/hadoop-mapreduce-project/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-mapreduce-project/CHANGES.txt?rev=1210548&r1=1210547&r2=1210548&view=diff
==============================================================================
--- hadoop/common/trunk/hadoop-mapreduce-project/CHANGES.txt (original)
+++ hadoop/common/trunk/hadoop-mapreduce-project/CHANGES.txt Mon Dec 5 18:02:47 2011
@@ -74,6 +74,9 @@ Trunk (unreleased changes)
MAPREDUCE-3500. MRJobConfig creates an LD_LIBRARY_PATH using the platform ARCH. (tucu)
+ MAPREDUCE-3389. MRApps loads the 'mrapp-generated-classpath' file with
+ classpath from the build machine. (tucu)
+
Release 0.23.1 - Unreleased
INCOMPATIBLE CHANGES
Modified: hadoop/common/trunk/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-common/src/main/java/org/apache/hadoop/mapreduce/v2/util/MRApps.java
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-common/src/main/java/org/apache/hadoop/mapreduce/v2/util/MRApps.java?rev=1210548&r1=1210547&r2=1210548&view=diff
==============================================================================
--- hadoop/common/trunk/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-common/src/main/java/org/apache/hadoop/mapreduce/v2/util/MRApps.java (original)
+++ hadoop/common/trunk/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-common/src/main/java/org/apache/hadoop/mapreduce/v2/util/MRApps.java Mon Dec 5 18:02:47 2011
@@ -22,6 +22,7 @@ import static org.apache.hadoop.yarn.uti
import static org.apache.hadoop.yarn.util.StringHelper._split;
import java.io.BufferedReader;
+import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
@@ -180,18 +181,23 @@ public class MRApps extends Apps {
String mrAppGeneratedClasspathFile = "mrapp-generated-classpath";
classpathFileStream =
thisClassLoader.getResourceAsStream(mrAppGeneratedClasspathFile);
- reader = new BufferedReader(new InputStreamReader(classpathFileStream));
- String cp = reader.readLine();
- if (cp != null) {
- Apps.addToEnvironment(environment, Environment.CLASSPATH.name(), cp.trim());
- }
// Put the file itself on classpath for tasks.
+ String classpathElement = thisClassLoader.getResource(mrAppGeneratedClasspathFile).getFile();
+ if (classpathElement.contains("!")) {
+ classpathElement = classpathElement.substring(0, classpathElement.indexOf("!"));
+ }
+ else {
+ classpathElement = new File(classpathElement).getParent();
+ }
Apps.addToEnvironment(
environment,
- Environment.CLASSPATH.name(),
- thisClassLoader.getResource(mrAppGeneratedClasspathFile).getFile()
- .split("!")[0]);
+ Environment.CLASSPATH.name(), classpathElement);
+ reader = new BufferedReader(new InputStreamReader(classpathFileStream));
+ String cp = reader.readLine();
+ if (cp != null) {
+ Apps.addToEnvironment(environment, Environment.CLASSPATH.name(), cp.trim());
+ }
// Add standard Hadoop classes
for (String c : ApplicationConstants.APPLICATION_CLASSPATH) {
Apps.addToEnvironment(environment, Environment.CLASSPATH.name(), c);