如何在CentOS Wildfly服务器上运行spring应用程序的完整基本路径?

时间:2015-06-01 07:44:43

标签: java spring centos wildfly

我需要使用Java获取已部署的spring应用程序的完整路径。我尝试了以下来获取路径

getClass().getProtectionDomain().getCodeSource().getLocation().getPath()

返回以下内容:

  • 在CentOS上运行Wildfly:
  

" /content/MyProject.war/WEB-INF/classes"

(部分路径)

  • 在Win7上运行Wildfly:
  

" / C:/wildfly-8.2.0.Final/standalone/deployments/MyProject.war/WEB-INF/classes"

(返回完整路径)

以上工作在我的Windows计算机上,但未在Wildfly上运行CentOS

1 个答案:

答案 0 :(得分:2)

据我所知,没有像部署的Web应用程序的完整路径这样的概念 - 至少在Java EE规范中没有。

您似乎默认假设已部署的Web应用程序必须位于文件系统中的某个位置,并且该位置存在绝对路径。

但情况并非如此,如果碰巧是这种情况,那么它就是应用服务器的实现细节,您的应用程序不应该依赖它。