如何设置非命令行JVM参数

luojihaidao 2010-07-20 07:08:22
java -Xmx256m -Dopennms.home="E:\mgntview\jnms\src" start -jar "abc.jar"



abc.jar里面的MANIFEST.MF文件内容:

Manifest-Version: 1.0
Created-By: 1.6.0_10 (Sun Microsystems Inc.)
Main-Class: com.jnms.ui.WebShellUI
Class-Path:



以上是一个常见的java命令,其中-Xmx256m -Dopennms.home="E:\mgntview\jnms\src" 是两个JVM的参数 表示这个java应用 设置了最在Head Size为256M,JVM的一个系统参数opennms.home值为"E:\mgntview\jnms\src",以及main的入口参数start。

用以上命令后我的java应用正常启动了。

但我想用设置MANIFEST.MF的方式不在命令行下输入命令启动,当然以上MANIFEST.MF设置后,双击abc.jar后我的应用启动了。


但这样不能载入JVM的参数。

因为我的应用比较大,默认的head size不满足我的需求。 必须设置-Xmx256m这个来以改变head size的大小。

问题:
不使用命令行可以设置JVM的参数?(不管是在设置MANIFEST.MF,还是在程序里面设置都可以,不过我现在还没有找到)


最后在IDE里(不管是eclipse,IDEA,NetBeans)都能设置VM参数和progarm参数。我想一定有办法的。


各位请教~




...全文
618 31 打赏 收藏 转发到动态 举报
写回复
用AI写文章
31 条回复
切换为时间正序
请发表友善的回复…
发表回复
weblin11 2012-05-17
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 的回复:]
遇到跟楼主一样的问题,我用的是weblogic,我的解决办法如下:
在bea\user_projects\domains\mydomain\bin目下的setDomainEnv.cmd找到set MEM_ARGS=在这后面把VM参数加上就可以了
[/Quote]
可是我set MEM_ARGS 的VM参数原来就有啊,set MEM_ARGS=-Xms256m -Xmx512m,求解?
ontrackfor19888 2010-07-24
  • 打赏
  • 举报
回复
恭喜楼主解决问题,楼主结贴给分吧!!
luojihaidao 2010-07-24
  • 打赏
  • 举报
回复
谢谢各位人回答。
luojihaidao 2010-07-24
  • 打赏
  • 举报
回复
问题解决了,有俩个方法:


1、用java web start。在JNLP里面是可以设置的。
2、用CMD时候,用start命令。这样黑窗口虽然一闪而过,但是毕竟黑窗口最终不见了。


shine333 2010-07-22
  • 打赏
  • 举报
回复
[Quote=引用 15 楼 luojihaidao 的回复:]

引用 14 楼 bao110908 的回复:
引用 13 楼 luojihaidao 的回复:

是这样写吗? 我先去试试


没用,只能使用 java -Xmx 这样设置。具体做法见 3 楼。


这样有CMD 窗口,不美观。
[/Quote]
1 java不是用来美观的
2 可以把java 改成 javaw, cmd窗口会自动消失(如果javaw是bat最后一个进程的话)
luojihaidao 2010-07-22
  • 打赏
  • 举报
回复
有经验的来说来句。

有解决方案就行。


分不够再加!!!
luojihaidao 2010-07-22
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 bao110908 的回复:]
引用 13 楼 luojihaidao 的回复:

是这样写吗? 我先去试试


没用,只能使用 java -Xmx 这样设置。具体做法见 3 楼。
[/Quote]

这样有CMD 窗口,不美观。
alicelijing1 2010-07-22
  • 打赏
  • 举报
回复
路过,学习一下啊!!!!!!!!
ssh87 2010-07-22
  • 打赏
  • 举报
回复
[Quote=引用 25 楼 luojihaidao 的回复:]
来人。 自己顶下、
[/Quote]。。。。。
luojihaidao 2010-07-22
  • 打赏
  • 举报
回复
来人。 自己顶下、
luojihaidao 2010-07-22
  • 打赏
  • 举报
回复
运行java程序时,用的是javaw命令,java和javaw命令有什么区别?
答:所作的工作大体相同,只是javaw不显示那个dos窗口,将java作为可执行文件时用,功能是一样的,只不过控制台输出内容的显示地点不一样,还有就是javaw慢。


这里说javaw 命令可以, 但我这不行呀,效果是出现CMD窗口,要自己关闭。 我再去试试,可能是要纯AWT SWING的程序才不会有CMD。
lilijr 2010-07-22
  • 打赏
  • 举报
回复
做成bat,放到计划任务里面,好像可以后台启动,没有窗口
DAVE_LUO 2010-07-22
  • 打赏
  • 举报
回复
学习了。
luojihaidao 2010-07-22
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 bao110908 的回复:]
引用 13 楼 luojihaidao 的回复:

是这样写吗? 我先去试试


没用,只能使用 java -Xmx 这样设置。具体做法见 3 楼。
[/Quote]

Eclipse IDEA 这些IDE都可以设置这些参数,而且也没有看到用这些IDE启动程序时还出现CMD窗口呀。
luojihaidao 2010-07-22
  • 打赏
  • 举报
回复
[Quote=引用 17 楼 shine333 的回复:]
2 可以把java 改成 javaw, cmd窗口会自动消失(如果javaw是bat最后一个进程的话)2 可以把java 改成 javaw, cmd窗口会自动消失……
[/Quote]

好像不行哦。
luojihaidao 2010-07-22
  • 打赏
  • 举报
回复
[Quote=引用 18 楼 closewbq 的回复:]
我有点疑问噢。
比如我用Eclipse直接打成个jar包指定了main函数。
结果:
MANIFEST.MF下只有:
Manifest-Version: 1.0
Main-Class: 类名
直接双击就打开了么!
[/Quote]

配置正确当然可以打开。你的方法我去试下,先谢了。
closewbq 2010-07-22
  • 打赏
  • 举报
回复
我有点疑问噢。
比如我用Eclipse直接打成个jar包指定了main函数。
结果:
MANIFEST.MF下只有:
Manifest-Version: 1.0
Main-Class: 类名
直接双击就打开了么!
colin_pxx 2010-07-21
  • 打赏
  • 举报
回复
你在MANIFEST.MF中把启动JVM的代码写在最前面不就可以了吗
wst004 2010-07-21
  • 打赏
  • 举报
回复
我的jar文件,写了个bat能运行,但双击jar却一点反映也没,不知道什么问题?
Manifest-Version: 1.0
Created-By: 1.6.0_07 (Sun Microsystems Inc.)
Main-Class: HtmlParser
Class-Path: lib/htmlparser.jar lib/mssqlserver.jar
lib/msbase.jar lib/msutil.jar

我的jar运行起来是需要用户输命令的
luojihaidao 2010-07-21
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 sky0036 的回复:]
遇到跟楼主一样的问题,我用的是weblogic,我的解决办法如下:
在bea\user_projects\domains\mydomain\bin目下的setDomainEnv.cmd找到set MEM_ARGS=在这后面把VM参数加上就可以了
[/Quote]

Tomcat,weblogic都有配置文件配置Head size。

因为我做的是Swing的一个前端显示,不期望用出现CMD;如果用配置文件在程序里面怎么写呢? 我想一但程序启动了应该不会再让我们修改他的Head size了。


加载更多回复(10)

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧