2011-08-10 15 views
1

Javaサービスラッパー(JSW)で使用しようとしている「Update.jar」というアプリケーションがありますが、 SERVICES.MSCまたはStartUpdate-NT.bat)、サービスがSERVICES.MSCで開始されたとして表示されても、アプリケーションは実行されません。ランタイムの長さを通してシステムトレイにアイコンが表示されるはずです。Javaサービスラッパー - サービス開始時にアプリケーションが実行されない

私はアプリ正常に起動しました:コマンドライン から実行することにより、

  • [ラッパ]/bin /ディレクトリにUPDATE.BATを実行しての.jar
  • を実行することにより、

    以下

    私のwrapper.confファイルです:

    #encoding=UTF-8 
    # Configuration files must begin with a line specifying the encoding 
    # of the the file. 
    
    #******************************************************************** 
    # Wrapper License Properties (Ignored by Community Edition) 
    #******************************************************************** 
    # Professional and Standard Editions of the Wrapper require a valid 
    # License Key to start. Licenses can be purchased or a trial license 
    # requested on the following pages: 
    # http://wrapper.tanukisoftware.com/purchase 
    # http://wrapper.tanukisoftware.com/trial 
    
    # Include file problems can be debugged by removing the first '#' 
    # from the following line: 
    #include.debug 
    
    # The Wrapper will look for either of the following optional files for a 
    # valid License Key. License Key properties can optionally be included 
    # directly in this configuration file. 
    #include ../conf/wrapper-license.conf 
    #include ../conf/wrapper-license-%WRAPPER_HOST_NAME%.conf 
    
    # The following property will output information about which License Key(s) 
    # are being found, and can aid in resolving any licensing problems. 
    #wrapper.license.debug=TRUE 
    
    #******************************************************************** 
    # Wrapper Localization 
    #******************************************************************** 
    # Specify the locale which the Wrapper should use. By default the system 
    # locale is used. 
    #wrapper.lang=en_US # en_US or ja_JP 
    
    # Specify the location of the Wrapper's language resources. If these are 
    # missing, the Wrapper will default to the en_US locale. 
    wrapper.lang.folder=../lang 
    
    #******************************************************************** 
    # Wrapper Java Properties 
    #******************************************************************** 
    # Java Application 
    # Locate the java binary on the system PATH: 
    wrapper.java.command=java 
    # Specify a specific java binary: 
    #set.JAVA_HOME=/java/path 
    #wrapper.java.command=%JAVA_HOME%/bin/java 
    
    # Tell the Wrapper to log the full generated Java command line. 
    #wrapper.java.command.loglevel=INFO 
    
    # Java Main class. This class must implement the WrapperListener interface 
    # or guarantee that the WrapperManager class is initialized. Helper 
    # classes are provided to do this for you. See the Integration section 
    # of the documentation for details. 
    wrapper.java.mainclass=org.tanukisoftware.wrapper.WrapperSimpleApp update.Tray 
    
    
    # Java Classpath (include wrapper.jar) Add class path elements as 
    # needed starting from 1 
    wrapper.java.classpath.1=../lib/wrapper.jar 
    wrapper.java.classpath.2=../lib/Update.jar 
    
    
    
    
    # Java Library Path (location of Wrapper.DLL or libwrapper.so) 
    wrapper.java.library.path.1=../lib 
    
    # Java Bits. On applicable platforms, tells the JVM to run in 32 or 64-bit mode. 
    wrapper.java.additional.auto_bits=TRUE 
    
    # Java Additional Parameters 
    wrapper.java.additional.1= 
    
    # Initial Java Heap Size (in MB) 
    #wrapper.java.initmemory=3 
    
    # Maximum Java Heap Size (in MB) 
    #wrapper.java.maxmemory=64 
    
    # Application parameters. Add parameters as needed starting from 1 
    #wrapper.app.parameter.1=update.Tray 
    
    #******************************************************************** 
    # Wrapper Logging Properties 
    #******************************************************************** 
    # Enables Debug output from the Wrapper. 
    # wrapper.debug=TRUE 
    
    # Format of output for the console. (See docs for formats) 
    wrapper.console.format=PM 
    
    # Log Level for console output. (See docs for log levels) 
    wrapper.console.loglevel=INFO 
    
    # Log file to use for wrapper output logging. 
    wrapper.logfile=../logs/wrapper.log 
    
    # Format of output for the log file. (See docs for formats) 
    wrapper.logfile.format=LPTM 
    
    # Log Level for log file output. (See docs for log levels) 
    wrapper.logfile.loglevel=INFO 
    
    # Maximum size that the log file will be allowed to grow to before 
    # the log is rolled. Size is specified in bytes. The default value 
    # of 0, disables log rolling. May abbreviate with the 'k' (kb) or 
    # 'm' (mb) suffix. For example: 10m = 10 megabytes. 
    wrapper.logfile.maxsize=0 
    
    # Maximum number of rolled log files which will be allowed before old 
    # files are deleted. The default value of 0 implies no limit. 
    wrapper.logfile.maxfiles=0 
    
    # Log Level for sys/event log output. (See docs for log levels) 
    wrapper.syslog.loglevel=NONE 
    
    #******************************************************************** 
    # Wrapper General Properties 
    #******************************************************************** 
    # Allow for the use of non-contiguous numbered properties 
    wrapper.ignore_sequence_gaps=TRUE 
    
    # Title to use when running as a console 
    wrapper.console.title=Test Wrapper Sample Application 
    
    #******************************************************************** 
    # Wrapper JVM Checks 
    #******************************************************************** 
    # Detect DeadLocked Threads in the JVM. (Requires Standard Edition) 
    wrapper.check.deadlock=TRUE 
    wrapper.check.deadlock.interval=10 
    wrapper.check.deadlock.action=RESTART 
    wrapper.check.deadlock.output=FULL 
    
    # Out Of Memory detection. 
    # (Ignore output from dumping the configuration to the console. This is only needed by the TestWrapper sample application.) 
    wrapper.filter.trigger.999=wrapper.filter.trigger.*java.lang.OutOfMemoryError 
    wrapper.filter.allow_wildcards.999=TRUE 
    wrapper.filter.action.999=NONE 
    # (Simple match) 
    wrapper.filter.trigger.1000=java.lang.OutOfMemoryError 
    # (Only match text in stack traces if -XX:+PrintClassHistogram is being used.) 
    #wrapper.filter.trigger.1000=Exception in thread "*" java.lang.OutOfMemoryError 
    #wrapper.filter.allow_wildcards.1000=TRUE 
    wrapper.filter.action.1000=RESTART 
    wrapper.filter.message.1000=The JVM has run out of memory. 
    
    #******************************************************************** 
    # Wrapper Email Notifications. (Requires Professional Edition) 
    #******************************************************************** 
    # Common Event Email settings. 
    #wrapper.event.default.email.debug=TRUE 
    #wrapper.event.default.email.smtp.host=<SMTP_Host> 
    #wrapper.event.default.email.smtp.port=25 
    #wrapper.event.default.email.subject=[%WRAPPER_HOSTNAME%:%WRAPPER_NAME%:%WRAPPER_EVENT_NAME%] Event Notification 
    #wrapper.event.default.email.sender=<Sender email> 
    #wrapper.event.default.email.recipient=<Recipient email> 
    
    # Configure the log attached to event emails. 
    #wrapper.event.default.email.attach_log=TRUE 
    #wrapper.event.default.email.maillog.lines=50 
    #wrapper.event.default.email.maillog.format=LPTM 
    #wrapper.event.default.email.maillog.loglevel=INFO 
    
    # Enable specific event emails. 
    #wrapper.event.wrapper_start.email=TRUE 
    #wrapper.event.jvm_prelaunch.email=TRUE 
    #wrapper.event.jvm_start.email=TRUE 
    #wrapper.event.jvm_started.email=TRUE 
    #wrapper.event.jvm_deadlock.email=TRUE 
    #wrapper.event.jvm_stop.email=TRUE 
    #wrapper.event.jvm_stopped.email=TRUE 
    #wrapper.event.jvm_restart.email=TRUE 
    #wrapper.event.jvm_failed_invocation.email=TRUE 
    #wrapper.event.jvm_max_failed_invocations.email=TRUE 
    #wrapper.event.jvm_kill.email=TRUE 
    #wrapper.event.jvm_killed.email=TRUE 
    #wrapper.event.jvm_unexpected_exit.email=TRUE 
    #wrapper.event.wrapper_stop.email=TRUE 
    
    # Specify custom mail content 
    wrapper.event.jvm_restart.email.body=The JVM was restarted.\n\nPlease check on its status.\n 
    
    #******************************************************************** 
    # Wrapper Windows NT/2000/XP Service Properties 
    #******************************************************************** 
    # WARNING - Do not modify any of these properties when an application 
    # using this configuration file has been installed as a service. 
    # Please uninstall the service before modifying this section. The 
    # service can then be reinstalled. 
    
    # Name of the service 
    wrapper.name=Auto-update 
    
    # Display name of the service 
    wrapper.displayname=Auto-update 
    
    # Description of the service 
    wrapper.description=Auto-update 
    
    # Service dependencies. Add dependencies as needed starting from 1 
    wrapper.ntservice.dependency.1= 
    
    # Mode in which the service is installed. AUTO_START, DELAY_START or DEMAND_START 
    wrapper.ntservice.starttype=AUTO_START 
    
    # Allow the service to interact with the desktop. 
    wrapper.ntservice.interactive=true 
    

    Wrapper.logの内容:

    ステータス|ラッパー| 2011/08/10 10:31:56 |自動更新サービスがインストールされています。 ステータス|ラッパー| 2011/08/10 10:32:07 |自動更新サービスの開始... 状態|ラッパー| 2011/08/10 10:32:07 | - >ラッパーがサービスとして開始されました STATUS |ラッパー| 2011/08/10 10:32:07 | Javaサービスラッパーコミュニティエディション32ビット3.5.10 状態|ラッパー| 2011/08/10 10:32:07 | Copyright(C)1999-2011 Tanuki Software、Ltd.すべての権利を保有します。 ステータス|ラッパー| 2011/08/10 10:32:07 | http://wrapper.tanukisoftware.com ステータス|ラッパー| 2011/08/10 10:32:07 | ステータス|ラッパー| 2011/08/10 10:32:08 | JVMを起動します。 INFO | jvm 1 | 2011/08/10 10:32:08 | WrapperManager:初期化中... ステータス|ラッパー| 2011/08/10 10:32:11 |自動更新が開始されました。

    誰かが正しい方向に向いていますか?

  • +0

    ログ・ファイルの内容を確認しましたか? (wrapper.logfile = ../logs/wrapper.log) –

    +0

    Arturs、説明にログの内容を追加しました(何かの理由でマークアップを編集できませんでした)。 –

    +1

    Tanukiを使用しましたJavaプロジェクトのラッパー私は数年前のことでしたが、いくつか問題があったことを思い出しました(それらはすべて最終的に解決されました)。ログには何か重要なものが表示されることを期待していたので、私は指し示す質問についてのみ助けることができます。少なくともあなたのJavaプログラムをチェックする方法について他の方法はありますか(トレイ以外)。あなたのアップデートの#mainでログ出力の例外を試しましたか? Java Service Wrapperが現在のインフラストラクチャでうまく動作することを証明するWrapperListenerを実装する他の非常に単純なJavaクラスを作成しようとしましたか? –

    答えて

    2

    あなたは wrapper.debug =真

    を設定することにより、デバッグし、サービスやポストとして、アプリケーションを再実行するログレベルを設定することができます。投稿したログファイルから、アプリケーションが実行されているように見えます...起動後に何が起こりますか?それはシャットダウンしますか?

    あなたはどのOSを実行していますか? Windows Vista以降、すべてのサービスは隔離されたデスクトップ(セッション0)で実行されるため、ユーザーのデスクトップにトレイアイコンが表示されません...

    小規模な修正)あなたの問題に、またあなたのconfファイルに変更してください:

    wrapper.java.mainclass=org.tanukisoftware.wrapper.WrapperSimpleApp update.Tray 
    

    wrapper.java.mainclass=org.tanukisoftware.wrapper.WrapperSimpleApp 
    wrapper.app.parameter.1=update.Tray 
    

    に歓声、

    +0

    私はWindows 7上で実行しているので、これは画面上に出力が表示されない理由です。これはJSWの問題ではないことを意味します。Windowsサービスとは別にインターフェイスを実行する必要があります。正しい方向に私を指してくれてありがとう! –

    関連する問題