diff --git a/jetty-distribution/pom.xml b/jetty-distribution/pom.xml
index 7f69534ef21..9983460a19a 100644
--- a/jetty-distribution/pom.xml
+++ b/jetty-distribution/pom.xml
@@ -6,7 +6,7 @@
7.0.0.M3-SNAPSHOT
jetty-distribution
- Distribution Assemblies
+ Jetty :: Distribution Assemblies
pom
target/distribution
diff --git a/jetty-start/pom.xml b/jetty-start/pom.xml
index dc4bba9a3f0..2a78ab706fb 100644
--- a/jetty-start/pom.xml
+++ b/jetty-start/pom.xml
@@ -6,7 +6,7 @@
4.0.0
jetty-start
- Start
+ Jetty :: Start
The start utility
diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/Main.java b/jetty-start/src/main/java/org/eclipse/jetty/start/Main.java
index c86652df778..34266b1bfe8 100644
--- a/jetty-start/src/main/java/org/eclipse/jetty/start/Main.java
+++ b/jetty-start/src/main/java/org/eclipse/jetty/start/Main.java
@@ -58,6 +58,7 @@ import java.util.StringTokenizer;
* ends with "/**" is a directory from which to recursively add all unconsidered jar and zip files.
* Containing = are used to assign system properties.
* Containing ~= are used to assign start properties.
+ * Containing /= are used to assign a canonical path.
* all other subjects are treated as files to be added to the classpath.
*
* ${name} is expanded to a start property
@@ -493,13 +494,23 @@ public class Main
// Handle the subject
if (subject.indexOf("~=")>0)
{
- int i=file.indexOf("=");
+ int i=file.indexOf("~=");
String property=file.substring(0,i);
- String value=file.substring(i+1);
+ String value=file.substring(i+2);
if (DEBUG)
System.err.println(" "+property+"~="+value);
setProperty(property,value);
}
+ if (subject.indexOf("/=")>0)
+ {
+ int i=file.indexOf("/=");
+ String property=file.substring(0,i);
+ String value=file.substring(i+2);
+ String canonical=new File(value).getCanonicalPath();
+ if (DEBUG)
+ System.err.println(" "+property+"/="+value+"=="+canonical);
+ setProperty(property,canonical);
+ }
else if (subject.indexOf("=")>0)
{
int i=file.indexOf("=");
diff --git a/jetty-start/src/main/resources/org/eclipse/jetty/start/start.config b/jetty-start/src/main/resources/org/eclipse/jetty/start/start.config
index d78e330a82e..53fcfe14c16 100644
--- a/jetty-start/src/main/resources/org/eclipse/jetty/start/start.config
+++ b/jetty-start/src/main/resources/org/eclipse/jetty/start/start.config
@@ -14,6 +14,7 @@
# ends with "/**" is a directory from which to recursively add all unconsidered jar and zip files.
# Containing = are used to assign system properties.
# Containing ~= are used to assign start properties.
+# Containing /= are used to assign a canonical path.
# all other subjects are treated as files to be added to the classpath.
#
# ${name} is expanded to a start property
@@ -65,6 +66,7 @@ jetty.home=.. ! exists $(jetty.home)/start.ja
jetty.home=jetty-distribution/src/main/resources ! exists $(jetty.home)/start.jar
jetty.home=../jetty-distribution/src/main/resources ! exists $(jetty.home)/start.jar
jetty.home=. ! exists $(jetty.home)/start.jar
+jetty.home/=$(jetty.home) exists $(jetty.home)/start.jar
# The main class to run
org.eclipse.jetty.xml.XmlConfiguration.class