2012-03-13 7 views
0

MacOS Xでサービスとして実行したいアプリケーションがあります。私はJSVCをラッパーとして使用していましたが、それでは、私はサービスとして登録する必要があります。いくつかのマニュアルを見つけ、.plistファイルを書きました。次に実行しましたMacOS XでJSVCラッパーを使ってサービスJavaアプリケーションとして登録(インストール)する方法

sudo launchctl load /Library/LaunchDaemons/my.service.plist 
sudo launchctl start my.service 

何も起こりませんでした。サービスは開始されませんでした。

のplist内容:

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> 
<plist version="1.0"> 
<dict> 
<key>Label</key> 
<string>my.service</string> 
<key>ProgramArguments</key> 
<array> 
<string>/servertest/MYService</string> 
<string>-jvm</string> 
<string>server</string> 
<string>-outfile</string> 
<string>out.txt</string> 
<string>-errfile</string> 
<string>err.txt</string> 
<string>-verbose</string> 
<string>-debug</string> 
<string>-home</string> 
<string>/System/Library/Frameworks/JavaVM.framework/Home</string> 
<string>-cp</string> 
<string>./lib/hsqldb.jar:./lib/my-wrapper.jar:./lib/commons-daemon-1.0.8.jar</string> 
<string>my.service.DaemonMac</string> 
</array> 
<key>WorkingDirectory</key> 
<string>/servertest</string> 
<key>StandardOutPath</key> 
<string>/servertest/stdout.log</string> 
<key>StandardErrorPath</key> 
<string>/servertest/stderr.log</string> 
<key>KeepAlive</key> 
<false/> 
<key>RunAtLoad</key> 
<true/> 
</dict> 
</plist> 

は私が間違って何をしているのですか?

+0

ゆう私はplistの中で、絶対パスを使用し、絶対パスではない相対的なもの – Mark

+0

を使用してみたらどうなりますか。相対的なものはJVMに渡される引数です。それは問題ではない、私は絶対的な道をどこでも試み、同じ結果を得た。 –

答えて

0

さて、誰も分かりません。とにかく、私はそれを自分で処理しました。ここでは私のために働いた例です:

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> 
<plist version="1.0"> 
<dict> 
    <key>KeepAlive</key> 
    <false/> 
    <key>Label</key> 
    <string>myserver</string> 
    <key>OnDemand</key> 
    <true/> 
    <key>ProgramArguments</key> 
    <array> 
     <string>/opt/MYServer/MYServer</string> 
     <string>-server</string> 
     <string>-outfile</string> 
     <string>/opt/MYServer/out.txt</string> 
     <string>-errfile</string> 
     <string>/opt/MYServer/err.txt</string> 
     <string>-verbose</string> 
     <string>-debug</string> 
     <string>-nodetach</string> 
     <string>-home</string> 
     <string>/System/Library/Frameworks/JavaVM.framework/Home</string> 
     <string>-cp</string> 
     <string>/opt/MYServer/lib/hsqldb.jar:/opt/MYServer/lib/my-wrapper.jar:/opt/MYServer/lib/commons-daemon-1.0.8.jar</string> 
     <string>my.service.DaemonMac</string> 
    </array> 
    <key>RunAtLoad</key> 
    <true/> 
    <key>StandardErrorPath</key> 
    <string>/opt/MYServer/stderr.log</string> 
    <key>StandardOutPath</key> 
    <string>/opt/MYServer/stdout.log</string> 
    <key>WorkingDirectory</key> 
    <string>/opt/MYServer</string> 
</dict> 
</plist> 
+0

だから何が違ったのですか?絶対パスを取得する独自のパラメータ、他に何か?読者には、上記のplistの作業をしたdiffを見るのが簡単になります。 – akauppi

+0

@akauppiあなたが2年前に頼んだ場合、私は確かに私の答えを取り直しました。しかし、この質問は広範な宣伝のために十分な興味深いものではないので、私はdiffを作成し、何が間違っていたかを思い出すことはありません。それを私に許してください:-) –

+0

絶対に理解されています:) – akauppi

関連する問題