从ubuntu中的jar文件启动tomcat

时间:2012-07-22 13:10:29

标签: java tomcat ubuntu profiling

我第一次使用tomcat。我已经下载并解压缩了tomcat 7.0.28。我可以通过./startup.sh和./shutdown.sh从命令提示符启动和关闭它。到目前为止它工作正常。我也可以在浏览器中看到tomcat主页和示例。

但我想要的是用java profiler配置tomcat服务器。 为此我想从jar文件中运行它。像java -jar tomcat_allrequiredclasses.jar。有什么方法可以像这样启动tomcat服务器吗?我试图运行tomcat的jar文件驻留在bin目录中,但给了我classNotdefined异常(只是为了尝试我这样做)。

谢谢..

1 个答案:

答案 0 :(得分:1)

Tomcat需要很多系统属性以及在JVM启动时设置的那些东西,因此除非您要使用“嵌入式Tomcat”并使用Tomcat's embedded driver编写自己的启动驱动程序,否则该脚本是必需的。 / p>

我认为仅仅附加一个分析器就太过分了。大多数分析器都带有一个JVM“代理”,您可以使用-agentpath命令行选项将其配置为在JVM启动时附加。这就是我附加YourKit Java Profiler的方法,例如:

CATALINA_OPTS="-agentpath:/path/to/yourkit/libyjpagent.so=${yourkit.options}"
$CATALINA_HOME/bin/startup.sh

这将以通常的方式启动Tomcat,但包含JVM探查器代理,以便您随后可以附加到它。

更新以包含OP的示例

你想这样做:

$ export CATALINA_OPTS="-javaagent:lib/jborat-agent.jar -Xss256m -Xms256m  \ -Dch.usi.dag.jborat.exclusionList="conf/exclusion.lst" \ -Dch.usi.dag.jp2.dumpers="ch.usi.dag.jp2.dump.xml.XmlDumper" \ -Xbootclasspath/p:./lib/Thread_JP2.jar:lib/jborat-runtime.jar:lib/jp2-runtime.ja‌​r"
$ $CATALINA_HOME/bin/startup.sh

我建议您尽可能使用完整路径(例如,请勿使用lib/jborat-agent.jar - 添加完整路径。)

请注意,通过使用-Xss256M,您将线程堆栈大小设置为256M而不是堆大小。我怀疑你打算用-Xmx256M来设置堆的最大大小。