我正在使用Ant部署我的Java应用程序。不幸的是,由于Vista,我在本地计算机上的测试部署不起作用。 Program Files direaries受到保护,我不想以管理员身份启动Ant或Eclipse。所以我有想法将我的webapps文件夹移动到工作区子文件夹,所以我也可以在Ant中使用相对路径。
解决方案似乎是修改server.xml中的Host元素。使用Linux不是这样的交易:
<Host name="localhost" appBase="/path/to/webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
但是对于Windows我没有做对。我尝试了所有可能的组合,例如:
C://Users//maerch//Workspaces//Tomcat6.0_webapps
C:/Users/maerch/Workspaces/Tomcat6.0_webapps
C:\Users\maerch\Workspaces\Tomcat6.0_webapps
C:\\Users\\maerch\\Workspaces\\Tomcat6.0_webapps
C://Users//maerch//Workspaces//Tomcat6.0_webapps\\
C:/Users/maerch/Workspaces/Tomcat6.0_webapps/
C:\Users\maerch\Workspaces\Tomcat6.0_webapps\
C:\\Users\\maerch\\Workspaces\\Tomcat6.0_webapps\\
路径也正确,但不起作用。日志文件中也没有错误消息,浏览器也不显示404消息或其他任何消息。只是一个没有标题的白页等等。有人可以帮忙吗?
答案 0 :(得分:9)
我遇到与Vista非常相同的安全问题,我通过在“Program Files \ Apache Software Foundation \ Tomcat XYZ”文件夹中为“Users”组提供“完全控制”访问级别来解决它。
它为我解决了tomcat的部署问题以及启动tomcat作为服务的问题。当然,您可以更严格地分配权限(每个部署用户组或每个用户)。 IMO它更快速地重新配置tomcat。
关于如何在Windows下更改$ {catalina.home}之外的路径的原始问题:
这与你必须在* nix上完成它是一样的:
<Host name="localhost" appBase="/c:/webapps2"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
您在appBase中提到的文件夹中是否有ROOT文件夹? 该方法在Tomcat 6.0下进行了测试
答案 1 :(得分:3)
以下内容适用于Windows:
C:/Users/maerch/Workspaces/Tomcat6.0_webapps/
/Users/maerch/Workspaces/Tomcat6.0_webapps/
Windows也支持Unix的斜杠(/),所以使用它而不是Windows(\)是个好主意。 Windows的“默认根目录”也是C:,所以你不应该在绝对路径中使用它。
我不认为这是路径的问题。也许您可以尝试使用相对路径:
"../../../Users/..."
将Tomcat安装在您具有完全访问权限的目录中也是一个好主意。
答案 2 :(得分:1)
for windows
的appBase = “C:// webapps2”
答案 3 :(得分:1)
如果将同一个webapps目录复制到另一个位置并更改server.xml文件中的路径,该怎么办?如果我们这样做,那么我绝对相信我们不会有任何问题因为每当webapps需要部署一个应用程序时它就会有。
谢谢&amp;最好的祝福, 基兰
答案 4 :(得分:0)
我尝试使用Apache tomcat 8.5版,只使用appBase="c:\path\to\webapps"
无缝地工作