Java 未设置Jetty home系统属性
我试图在jetty配置中使用system属性,如下所示:Java 未设置Jetty home系统属性,java,jetty,system-properties,Java,Jetty,System Properties,我试图在jetty配置中使用system属性,如下所示: <SystemProperty name="jetty.home" default="" />/etc/jetty7/context /etc/jetty7/context 但是jetty.home总是返回空的。如何设置此变量并将其指向何处 我需要一个上下文路径 我的jetty主文件夹是D:\Developer Tools\jetty-6.1.26。是否需要指向此文件夹?如果是,我该
<SystemProperty name="jetty.home" default="" />/etc/jetty7/context
/etc/jetty7/context
但是jetty.home
总是返回空的。如何设置此变量并将其指向何处
我需要一个上下文路径
我的jetty主文件夹是D:\Developer Tools\jetty-6.1.26
。是否需要指向此文件夹?如果是,我该怎么做?我需要使用Windows全局变量吗
我正在使用
org.mortbay.jetty
jetty.home
中的org.eclipse.jetty.xml.XmlConfiguration
类,该类由jetty的启动机制设置
您使用的是Jetty 6.1.26(注意:Jetty 6.x已被弃用,并且在2010年就已经停止使用)
虽然我不知道Jetty 6是如何工作的,但我知道Jetty 7/8/9在这方面是如何工作的
更新:2019年8月:Jetty 9.4.x是Jetty当前稳定且积极支持的版本主线
Jetty启动机制(模块:.akastart.jar
)将在(位于start.jar
中的文件)中建立Jetty.home
属性,然后使用org.eclipse.Jetty.xml.XmlConfiguration
类()在XmlConfiguration
对象中建立一组属性,然后加载命令行上声明的XML文件并start.ini
问题#1:混合码头版本
您有多种Jetty版本,可以工作,但不能跨Jetty 6(如您声明的Jetty主文件夹D:\Developer Tools\Jetty-6.1.26
)和Jetty 7(如您声明的/etc/Jetty 7/context
中所示)。它们是100%不相容的
问题#2:错误的XML语法使用
用于处理路径的XML语法错误
您的语法
/etc/jetty7/context
使用中声明默认值。(空默认值无效)
etc/jetty7/context
如果您的jetty.home
是D:\Developer Tools\jetty-distribution-7.6.11.v20130520
,那么这将指向D:\Developer Tools\jetty-distribution-7.6.11.v20130520\etc\jetty7\context
如果在使用XmlConfiguration
之前未声明jetty.home
,则将使用默认值,“
它将被转换为当前工作目录(也称为System.getProperty(“user.dir”)
)加上指定的硬编码相对路径。如果user.dir
是D:\code\MyProject
,则结果将是D:\code\MyProject\etc\jetty7\context
绝对路径的正确语法
/etc/jetty7/context
这种语法可能不太关心jetty.home,结果在unix上总是
/etc/jetty7/context
,在windows上(很可能是)C:\etc\jetty7\context
。感谢您的澄清。关于混合版本和默认路径,您完全正确。原来我在系统所有权和etc/码头之间有一个入口。。。