Java 批处理文件以编辑文本文件

Java 批处理文件以编辑文本文件,java,deployment,batch-file,Java,Deployment,Batch File,我需要它来使用war文件部署web应用程序 我已经研究出如何使用jar命令创建war文件。但是,当用户部署web应用程序时,必须更新web.xml文件中的某个字符串以反映用户环境 例如,在web.xml文件中,我有一个条目(示例): 颜色 红色 我想向用户询问颜色,然后更新war文件。显然,用户部署了正确的东西。我可以使用jar uf更新文件-没有问题。上面的文本将插入文本文件中的一个设置位置。具体来说,应该在正文之后 我很高兴在命令行上这样做。例如这样的事情: 提示用户输入字符串 更新we

我需要它来使用war文件部署web应用程序

我已经研究出如何使用jar命令创建war文件。但是,当用户部署web应用程序时,必须更新web.xml文件中的某个字符串以反映用户环境

例如,在web.xml文件中,我有一个条目(示例):


颜色
红色
我想向用户询问颜色,然后更新war文件。显然,用户部署了正确的东西。我可以使用jar uf更新文件-没有问题。上面的文本将插入文本文件中的一个设置位置。具体来说,应该在正文之后

我很高兴在命令行上这样做。例如这样的事情:

  • 提示用户输入字符串
  • 更新web.xml中的字符串
  • 更新war部署文件中的web.xml文件
  • 然后用户可以手动将war文件复制到正确的位置

  • 我该如何编程?目前,仅限Windows(但不久将需要linux支持)。批处理文件?关于如何处理的任何建议?

    使用Maven资源筛选,如本例所述:

    搜索并替换为GNU: (适用于您的第一季度和第二季度) @echo off和setlocal REM在变量中设置旧颜色 设置“oldstring=red” REM提示用户输入字符串 设置/p“字符串=输入字符串:” web.xml中的REM更新字符串 sed-i“s/%oldstring%/%string%/i”web.xml 键入web.xml 。。输出为:

    enter string: green
    <init-param>
     <param-name>colour</param-name>
     <param-value>green</param-value>
    </init-param>
    
    输入字符串:绿色
    颜色
    绿色
    

    我对战争文件没有任何线索。请解释一下,然后我会改进我的代码。

    这是java的东西。您可以使用jar命令来创建。请参见此处:。例如jar-cvf myappname.war。要创建并jar-uf myappname.war./WEB-INF/WEB.xml更新.OK,Java不是我的部门。 @echo off&setlocal REM set the old color in a variable set "oldstring=red" REM prompt the user for a string set/p "string=enter string: " REM update string in web.xml sed -i "s/%oldstring%/%string%/i" web.xml type web.xml
    enter string: green
    <init-param>
     <param-name>colour</param-name>
     <param-value>green</param-value>
    </init-param>