没有AntJava任务的可运行jar文件-这怎么可能?
我从以前的开发人员那里继承了一些代码,这些代码使用Ant构建到一个可执行的jar文件中,通过双击运行。应用程序运行,但在某些情况下会因OutOfMemoryError而崩溃。为了研究这个问题,我想将-XX:+heapdumponautofmemory jvm参数添加到Ant构建文件中,据我所知,没有AntJava任务的可运行jar文件-这怎么可能?,ant,jar,executable,heap-dump,Ant,Jar,Executable,Heap Dump,我从以前的开发人员那里继承了一些代码,这些代码使用Ant构建到一个可执行的jar文件中,通过双击运行。应用程序运行,但在某些情况下会因OutOfMemoryError而崩溃。为了研究这个问题,我想将-XX:+heapdumponautofmemory jvm参数添加到Ant构建文件中,据我所知,元素需要在任务下运行。但是,在这个代码库中的这个或任何其他Ant构建文件中找不到任务 这怎么可能呢?如果没有任务,jar文件如何可以执行 我主要是想找出是什么让我的jar文件可以执行,这样我就可以知道在哪
元素需要在
任务下运行。但是,在这个代码库中的这个或任何其他Ant构建文件中找不到
任务
这怎么可能呢?如果没有
任务,jar文件如何可以执行
我主要是想找出是什么让我的jar文件可以执行,这样我就可以知道在哪里放置
元素来调试OOME
谢谢 任务不会创建可执行的jar文件。它执行一个Java程序
我认为,在启动可执行jar文件时,双击它是不可能指定VM参数的。如果要传递VM参数,请打开命令提示符并按以下方式执行jar:
java -XX:+HeapDumpOnOutOfMemory -jar nameOfTheJar.jar
jar是可执行的,因为它在META-INF/MANIFEST.MF文件中定义了一个主类。双击它运行对Ant没有任何作用。Ant只是用来打包jar
为了添加参数并仍然通过双击启动,您可以创建一个快捷方式,在JB Nizet的答案中运行命令请参见@digitaljoel的答案。并阅读请发布build.xml内容。你得到的答案很快,但他说的是事实。此外,您还可以编写启动脚本来启动应用程序。启动脚本通常是.bat、.cmd(Windows)或.sh(*nix)文件,您可以在其中执行环境参数检查、定义jvm参数以及应用程序的预设启动参数,等等。例如,您可以检查Tomcat的catalina.bat或catalina.sh并查看它的功能。