当我在远程会话(etsn {servername})中运行PowerShell时,我有时似乎不能运行Java进程,即使是最简单的:
[chi-queuing]: PS C:\temp> java -cp .\hello.jar Hello
Error occurred during initialization of VM
Could not reserve enough space for object heapHello.jar是一个“你好,世界!”应用程序应该只打印"Hello“到standard output。
那么,问题是,在PowerShell会话的另一端运行进程有什么特殊之处吗?Java VM的工作方式是否有一些特殊之处,可能不允许这样的处理?内存是在远程计算机上分配的,对吗?下面是可用物理内存的读数:
[chi-queuing]: PS C:\temp> $mem = Get-wmiobject -class Win32_OperatingSystem
[chi-queuing]: PS C:\temp> $mem.FreePhysicalMemory
1013000但是,当我远程桌面到服务器,并询问操作系统有多少可用内存时,它说有270兆物理内存可用。让我知道你的想法!
发布于 2011-01-20 10:01:37
根据这个:http://msdn.microsoft.com/en-us/library/aa384372(VS.85).aspx
MaxMemoryPerShellMB指定每个shell分配的最大内存量,包括shell的子进程。默认值为150 MB。
增加每Shell MB的最大内存
winrm set winrm/config/winrs '@{MaxMemoryPerShellMB="1000"}' 发布于 2015-04-07 21:51:41
我有一个不同的答案要和你们分享。我发现自己也处于同样的情况,增加Java.exe的最小内存/最大内存或使用winrm都不能解决我的问题。
我比较了两台服务器:一台正常工作,另一台不工作。
我使用这个链接https://technet.microsoft.com/en-us/library/ff520073%28v=ws.10%29.aspx来检查我的Windows Management Foundation,它是运行WINRS和远程powershell所必需的。
结果是:两台服务器都运行Windows Server2008 R2。一台服务器运行WMF 2.0,另一台运行WMF 3.0。
令我惊讶的是,运行2.0版本的服务器运行正常,而运行3.0版本的服务器运行不正常!
我的解决方案是:我把3.0的WMF升级到了4.0!
发布于 2015-12-02 21:57:13
仅供参考:我们遭受了相同的症状,并根据其他两个答案进行了无休止的调查。对我们来说,实际的解决方案是将jdk1.8.0_31更改为jdk1.8.0_51。
https://stackoverflow.com/questions/4741676
复制相似问题