从NetBeans 7运行Tomcat 7的自定义context.xml文件
我试图避免在版本控制文件和打包文件中放置密码。为了做到这一点,我的项目中不能有context.xml(它包含我的数据库信息) 我目前正在使用Tomcat 7.0.35管理器部署war文件,因为它允许指定服务器上context.xml文件的文件路径 这一切都很好,只是我还没有在Netbeans 7.2.1的开发中找到一种方法来实现这一点。因此,当我试图在Netbeans中运行我的项目时,我得到以下消息从NetBeans 7运行Tomcat 7的自定义context.xml文件,tomcat,netbeans,deployment,tomcat7,netbeans-7,Tomcat,Netbeans,Deployment,Tomcat7,Netbeans 7,我试图避免在版本控制文件和打包文件中放置密码。为了做到这一点,我的项目中不能有context.xml(它包含我的数据库信息) 我目前正在使用Tomcat 7.0.35管理器部署war文件,因为它允许指定服务器上context.xml文件的文件路径 这一切都很好,只是我还没有在Netbeans 7.2.1的开发中找到一种方法来实现这一点。因此,当我试图在Netbeans中运行我的项目时,我得到以下消息 In-place deployment at (...)/trace (...)/trace/t
In-place deployment at (...)/trace
(...)/trace/target/trace/META-INF/context.xml (No such file or directory)
如果您能帮助我配置Netbeans或以其他方式实现我的目标,我们将不胜感激。Netbeans需要一个
META-INF/context.xml
从IDE运行war。根据我的观察,如果context.xml
不存在,它就会创建它
在本地项目工作区中保留一个
META-INF/context.xml
,但将路径添加到.gitignore
(或等效的SCM)中,这样您就不会意外地提交它了,怎么样?我找到了一种适合我具体情况的方法。我保留了context.xml
,但使用了Tomcat支持的Apache
但是我选择使用$CATALINA_BASE/conf/CATALINA.properties
文件,这对我来说似乎更易于维护。我还在源文件中附上一个catalina.example.properties
,以记录应用程序预期的变量
希望这对其他人有所帮助。谢谢您的帮助,但您提供的解决方案仍然会迫使我在二进制文件中使用context.xml,这将阻止它们的可移植性和安全性。@clark:这不是我的问题。由于context.xml从未提交,我们的构建服务器(Jenkins)对该文件没有可见性,因此它不包含在构建中的.war中