java - 启动tomcat时如何传递-D附加参数?

标签 java parameters batch-file tomcat6 environment

我有一个 maven 项目,运行命令 mvn install 所有项目以及模块编译并成功复制到本地存储库后。但现在我想在 tomcat6 中运行生成的 web 应用程序。客户端为tomcat提供了一些参数,如-Dapp.username,-Dapp.username,,一旦项目启动,将在内部使用。但我不知道如何在tomcat6中设置这些附加参数。下面是我的开发环境

  1. 操作系统 = Windows
  2. Tomcat = tomcat 6.0.27

请帮帮我?

最佳答案

对于 Tomcat 6,您应该将参数添加到 startup.sh (Windows startup.bat)。对于 Tomcat 7 及更高版本,您应该在 {Catalina Root}/bin/setenv.sh 中设置参数,如下所示:

export CATALINA_OPTS="$CATALINA_OPTS -Dapp.username=username -Dapp.password=password"

或者在 Windows 中:

set CATALINA_OPTS="$CATALINA_OPTS -Dapp.username=username -Dapp.password=password"

注意:请注意开头的 $CATALINA_OPTS,这样您就不会清除任何先前设置的值。不这样做会造成非常难以调试的问题!

如果您设置的参数仅供 Tomcat 使用,请务必使用 CATALINA_OPTS 进行设置。

如果您的应用程序将使用这些参数,那么请务必改用 JAVA_OPTS。 Tomcat 也会读取这些参数。这也可以放在 setenv.sh 文件中。例如:

export JAVA_OPTS="$JAVA_OPTS -Dapp.username=username -Dapp.password=password"

或者在 Windows 中:

set JAVA_OPTS="$JAVA_OPTS -Dapp.username=username -Dapp.password=password"

关于java - 启动tomcat时如何传递-D附加参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14984256/

相关文章:

mysql - 准备好的语句执行,要绑定(bind)的参数数量可变

javascript - 使用NodeJS,head中的javascript无法使用来自服务器的参数

powershell - 如何在win10命令提示符下使用ffmpeg连接来自不同子目录的视频文件?

batch-file - SETLOCAL ENABLEDELAYEDEXPANSION导致CD和PUSHD无法持久保存

Java 线程不会运行,除非我把 Thread.sleep(1);

java - 从 OnClickListener 向函数外部返回一个整数(Android、Java)

java - 从动态生成的 JSP 表中获取所有选中的复选框值到 servlet?

java - DeepLearning4j k-均值非常慢

java - 在android中使用边缘检测选择区域后裁剪图像

powershell - 如何在一行上运行PowerShell?