1

Windows サービスにラップされたコマンド ラインを使用して jar ファイルを実行した経験はありますか?

マシンにログインせずにjarファイルを実行する方法を見つけようとしています.コマンドシェルが許可されているので、それが良い考えかどうか疑問に思っていました.

ありがとう!


元の投稿:

Associated Press の Web Feeds Manager を実行しようとしています。これは基本的に、ログイン時にダブルクリックして実行できる jar ファイルです。

同じファイルを実行したいのですが、マシンにログインしていません。彼らのマニュアル (http://wfm.ap.org/admin/content/help/Running_Agent_on_a_Remote_Server.htm) には、コマンドライン パラメータを使用してその方法が書かれています。

基本的に、誰がログインしているかに関係なく、jar を Windows サービスとして実行したいのですが、Google で検索すると問題があることがわかりました。

jar ファイルをリモートで実行した経験はありますか? 落とし穴は何ですか?

ありがとう!

4

5 に答える 5

2

Google検索で、この記事に出くわしました-

Jar アプリケーションを Windows サービスとして実行する

Java Service Wrapperこのタスクを達成するための Tanukisoftware.org のオープン ソース プロジェクトについて言及しています。

注:私はこれを個人的に使用していません。

于 2012-12-26T09:31:55.337 に答える
0

Windows の場合、 Java Service Wrapperの方が適しています

于 2012-12-26T09:31:13.557 に答える
0

私のお気に入りは Linux の新興企業ですが、これは Ubuntu のみです。

Windows では、このフォーラムによると、多くの選択肢があります。

于 2013-02-27T14:43:41.613 に答える
0

ブート/シャットダウン時にサービスを開始/停止することに関心がなく、プログラムを手動で開始してログアウト後も実行し続けたい場合は、次のようにします。

$ nohup java -jar foobar.jar > foobar.log 2>&1 &

つまり、foobar.jar を起動し (java -jar)、ログアウト後も実行し続けます (nohup) stdout を foobar.log (>) および stderr (2>&1) にリダイレクトし、バックグラウンドで実行します (&最後に)。

代わりに、Linux ボックスに「サービス」をインストールすることに関心がある場合は、使用しているディストリビューションに応じて多くのオプションがあります。最も一般的なのは、upstart (ubuntu 用) と System V init スクリプト (Redhat など) です。また、cron を使用して、起動/シャットダウン時にサービスを開始/停止できます。Java アプリ (hudson) を init システムにインストールする例については、こちらを参照してください。または、同じことをupstartで実行することもできます。または、私が言ったように、cronがオプションになる可能性があります。

Windows にはJava Service Wrapperがあります。そして、それほど多くはありません。

于 2012-12-26T09:26:26.750 に答える
-1

ツール Exe4j

Exe4j.exe を使用できます。このツールは、.jar ファイルから service.exe ファイルを生成します。

ここから Exe4j をダウンロードできます: exe4j のダウンロード

于 2013-08-15T09:06:11.587 に答える