如何更改Jason-JEdit生成进程的java内存堆量?
我正在运行Jason-JEdit中编辑的代码,作为应用程序的一部分,启动了一个NetLogo进程,该进程由第一个进程发起,但是出现了一个堆大小错误。Jason-Jedit中的主要流程是:
用户6006 6003 9 19:44?00:00:02 java-Xms256m-Xmx1024m-classpath~/Jacamo/lib/Jacamo.jar:/usr/local/lib/netlogo5.2/NetLogo.jar:-jar~/Jason-1.4.2/bin/jedit/jeditt.jar
Jason-Jedit生成的流程有:
1-代理的正常启动器过程
用户60556006119:44?00:00:00/usr/lib/jvm/java-7-oracle/bin/java-classpath~/Jacamo/lib/ant启动器。jar是org.apache.tools.ant.launch。启动器-e-f bin/build。xml运行
2-NetLogo启动过程
User 6069 6055 99 19:44?00:00:05 /usr/lib/jvm/java-7-oracle/jre/bin/java-classpath~/JaCaMo/workingDir:~/JaCaMo/workingDir/bin/类:~/Jacamo/lib/jason.jar:/usr/local/lib/netlogo5.2/NetLogo.jarjason.infra.centralised.RunCentralisedMASsystemMAS-JNL.mas2j
可以看到,生成的进程没有堆大小选项:-Xms256m -Xmx1024m,而第一个进程有。
我已经尝试了以下:1)编辑jason.sh/Jacamo.sh文件添加:java-Xms256m-Xmx1024m-classpath[...]
2)添加变量_JAVA_OPTIONS在. profile导出_JAVA_OPTIONS="-Xms256m-Xmx1024m"
这只适用于主进程Jason Jedit应用程序,但问题仍然存在于生成的进程中。你知道如何改变杰迪特的设置吗?
我不认为这与jEdit
本身有任何关系,因为它只是被运送并用作jason项目提供的自定义插件的编辑器和主机。从插件代码的一个非常简短的观察,我会说它生成了一个启动RunCentralisedMAS
类的Ant构建脚本,并且它没有将任何jvmarg注入到这个Ant构建脚本中。但是build-template.xml
文件有一个带有jvmarg
s的注释行。所以我想如果你搜索build-template.xml
文件并更改它以设置jvmarg
,它会为你工作。
PS:有时我会从java代码执行shell脚本。会不会导致这类问题?
我想检查我的应用程序是否很好地获得选项。 java进程在docker容器中运行。 为了做到这一点,我要找到所创建进程的最大堆大小。 null 假设(ngcmx+ogcmx)=()可以吗? https://docs.oracle.com/javase/8/docs/technotes/tools/unix/jstat.html
我正在Windows 8.1 64位上开发java swing应用程序,带有4GB内存和JDK版本8u20 64位。 问题是当我使用带有监视器选项的Netbeans profiler启动应用程序时。 加载第一个Jframe时,应用程序Memory Heap约为18mb,JVM进程大小约为50mb(Image1)。 然后,当我启动另一个Jframe时,它包含一个带有webView的JFxPanel,
如何通过命令行检查Linux上Java应用程序的堆大小(和使用的内存)? 我已经通过jmap试过了。但它提供了信息。关于Eden/PermGen等内部记忆区域,这对我来说没用。 我在寻找这样的东西: 最大内存:1GB 这就是全部。我知道我可以在JConsole等中看到这一点,但我需要通过命令行来实现。(无法启用JMX等)
上面链接中的代码正在工作,但可以传输到一定数量的数据。当我试图传输一个大小约为334 MB的.mkv格式的电影时,它给出了“内存不足,java堆大小”的错误。我是一个乞丐,我不知道如何解决这个问题,我试图在客户端程序中增加缓冲区大小,但问题仍然存在。请帮帮我.
我一直在尝试分配256MB数组,这产生了Java堆空间异常。我试过这个解决办法,但没有用。所以我一直在找另一个类似的问题,发现了这个。但是,在将堆大小提高到1377MB以上之后,我会得到以下错误: