LiveCycle を Windows サービスとして起動すると、「java.lang.OutOfMemoryError: PermGen space」が発生します

問題点

このリンク(LiveCycle ES4 の JBoss へのインストールとデプロイ、第 10.2 章 Windows サービスのインストール)の手順に従って Windows サービスとして実行するように JBoss を設定すると、LiveCycle は次の例外を除き、起動に失敗するでしょう:

java.lang.OutOfMemoryError: PermGen space at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:792) at org.jboss.classloader.spi.base.BaseClassLoader.access$200(BaseClassLoader.java:48) at org.jboss.classloader.spi.base.BaseClassLoader$2.run(BaseClassLoader.java:637) at org.jboss.classloader.spi.base.BaseClassLoader$2.run(BaseClassLoader.java:596) at java.security.AccessController.doPrivileged(Native Method)

コマンドラインから JBoss を起動すると、LiveCycle が正常に起動します。

原因

この問題は、このリンクで説明されているように、JBoss EAP 上の既存のバグ(#JBPAPP-5403)に関連しています。すべての JVM 引数の設定は、メモリ割り当てが無視されます。これは、boot.log 内の次の行から見られます。

[ServerInfo] VM 引数:-Xrs -Djava.net.preferIPv4Stack=true -Dprogram.name=0.0.0.0 -Djava.endorsed.dirs=\jboss\lib\endorsed

解決策

この問題は次の手順に従って解決できます。

  • 「<JBoss root>\bin\service.bat」をテキストエディタで開きます。
  • 次の行を探します。

@if not "%ECHO%" == "" echo %ECHO%
@if "%OS%" == "Windows_NT" setlocal
set DIRNAME=%CD%

  • 次の行に置き換えます。

@if not "%ECHO%" == "" echo %ECHO%
@if "%OS%" == "Windows_NT" setlocal
set DIRNAME=%CD%

rem オプションの設定ファイルを読み込みます。
if "x%RUN_CONF%" == "x" (
set "RUN_CONF=%DIRNAME%\run.conf.bat"
)
if exist "%RUN_CONF%" (
call "%RUN_CONF%" %*
)

  • 「service.bat」ファイルを保存します。
  • 「JBoss for Adobe LiveCycle ES4」サービスを再起動します。
  • 「boot.log」を開き、追加の JVM 引数が存在することを確認します:

[ServerInfo] VM arguments: -Xrs -Dorg.jboss.resolver.warning=true -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -Dsun.lang.ClassLoader.allowArraySyntax=true -Xms1024m -Xmx4096m -XX:PermSize=512m -XX:MaxPermSize=768m -XX:+UseCompressedOops -Dadobeidp.serverName=server1 -Dfile.encoding=utf8 -Djava.net.preferIPv4Stack=true -DentityExpansionLimit=10000 -XX:+HeapDumpOnOutOfMemoryError -Dorg.jboss.net.protocol.file.useURI=false -Djdk.logging.allowStackWalkSearch=true -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -Dorg.jboss.resolver.warning=true -Djava.net.preferIPv4Stack=true -Dprogram.name=0.0.0.0 -Djava.endorsed.dirs=E:\Adobe\Adobe LiveCycle ES4\jboss\lib\endorsed

ノート

ご注意ください。この問題は、手動で作成された Windows サービスにのみ影響します。ターンキーまたは自動インストールの一部として作成された Windows サービスは、期待通りに機能します。

 Adobe

ヘルプをすばやく簡単に入手

新規ユーザーの場合

Adobe MAX 2025

Adobe MAX Japan
クリエイターの祭典

2025 年 2 月 13 日
東京ビッグサイト