3

私のソースファイルは.../MyDir/proj/myProj.java. jar ファイルは.../MyDir/proj/library. jar ファイルはHTMLUnit 2.10のものです。

これは私のcronファイルのソースです:

0 0 * * * java -classpath .../MyDir/proj/ myProj

しかし、それは私にエラーを与えました:

Exception in thread "main" java.lang.NoClassDefFoundError: com/gargoylesoftware/htmlunit/WebClient

jar ファイルをインポートするように cron ファイルを変更するにはどうすればよいですか?

4

3 に答える 3

2

このようなもの:

0 0 * * * java -classpath .../MyDir/proj/:.../MyDir/proj/library/jar1.jar:.../MyDir/proj/library/jar2.jar myProj

または、最近の JVM を使用している場合は、ワイルドカードを使用してすべての JAR ファイルに一致させることができます。

0 0 * * * java -classpath .../MyDir/proj/:.../MyDir/proj/library/\* myProj

(「グロビング」はそのコンテキストの何かと一致する可能性が低いため、バックスラッシュはおそらく不要です...)


さらに良いのは、コマンド (および起動の準備のために実行する必要があるその他のコマンド) をシェル スクリプトに入れ、代わりに crontab エントリからスクリプトを実行することです。

于 2012-08-07T06:00:26.430 に答える
0

Spring Boot Java ユーザーの場合、@scheduledアノテーションを使用できます。詳細と優れた例については、こちらをご覧ください

于 2019-06-03T05:21:22.833 に答える