2016-06-30 7 views
0

私のJavaプログラムを特定のコンピュータのバックグラウンドで実行しようとしていますが、私はこのディレクトリにdirを実行すると、私は私が私がいることを知っているJDKのパスを設定しているエラー:多くの外部JARSとクォーツスケジューリングでメインクラスのJavaを見つけられないかロードできませんでした

06/29/2016 01:18 PM <DIR>   . 
06/29/2016 01:18 PM <DIR>   .. 
06/30/2016 10:38 AM    1,162 ADObject.class 
06/09/2016 10:35 AM    950 ADObject.java 
06/30/2016 10:38 AM    8,572 BillingReport.class 
06/30/2016 09:39 AM   10,040 BillingReport.java 
06/30/2016 10:38 AM    791 CustomerObject.class 
06/15/2016 10:24 AM    546 CustomerObject.java 
06/30/2016 10:38 AM    4,353 HistoryReportBuilder.class 
06/30/2016 09:39 AM    6,136 HistoryReportBuilder.java 
06/30/2016 10:38 AM    7,093 MonthlyReportBuilder.class 
06/30/2016 09:39 AM    8,196 MonthlyReportBuilder.java 
06/30/2016 10:38 AM    5,183 ProgramMain.class 
06/30/2016 09:34 AM    7,508 ProgramMain.java 
06/30/2016 10:38 AM    2,085 ProgramScheduler.class 
06/30/2016 10:33 AM    3,135 ProgramScheduler.java 
06/30/2016 10:38 AM    6,316 SQLConnection.class 
06/28/2016 02:19 PM    6,738 SQLConnection.java 
06/30/2016 10:38 AM    844 UserObject.class 
06/22/2016 11:33 AM    549 UserObject.java 
       18 File(s)   80,197 bytes 
       2 Dir(s) 53,912,338,432 bytes free 

を見ることができる私が開発する日食使用していると私は思いディレクトリが

C:\Users\clind_Site2\workspace\GoldenSheetHelper\src\GSH 

です問題になることはできません。実行するには

javac -cp C:\Users\clind_Site2\mark\Microsoft_JDBC_Driver_6.0_for_SQL_Server\sqljdbc_6.0\enu\sqljdbc42.jar;C:\Users\clind_Site2\mark\jtds\jtds-1.3.1.jar;C:\Users\clind_Site2\mark\quartz-2.2.0.jar;C:\Users\clind_Site2\mark\slf4j-1.7.21\slf4j-api-1.7.21.jar;C:\Users\clind_Site2\mark\slf4j-1.7.21\slf4j-simple-1.7.21.jar *.java 

を実行して動作させます。私は

java -cp .;C:\Users\clind_Site2\mark\Microsoft_JDBC_Driver_6.0_for_SQL_Server\sqljdbc_6.0\enu\sqljdbc4.jar;C:\Users\clind_Site2\mark\jtds\jtds-1.3.1.jar;C:\Users\clind_Site2\mark\quartz2.2.0.jar;C:\Users\clind_Site2\mark\slf4j-1.7.21\slf4j-api-1.7.21.jar;C:\Users\clind_Site2\mark\slf4j-1.7.21\slf4j-simple-1.7.21.jar ProgramScheduler 

Error: Could not find or load main class ProgramScheduler 

私は私が私がjavawを使用する必要があり、バックグラウンドでこれを実行したいと言うが、私はちょうど確認するとき、それは最初に動作することを実現

を実行します。

彼は、私が電話をかけたいメインの私のコードです:

パブリッククラスProgramScheduler {

public static void main(String[] args) { 

     try { 
     // specify the job' s details.. 
     JobDetail job = JobBuilder.newJob(ProgramMain.class) 
            .withIdentity("mainJob") 
            .build(); 
     //Retrieve new Data at 1:00am everyday 
     CronTrigger cronTrigger1 = TriggerBuilder.newTrigger() 
       .withIdentity("crontrigger1","crontriggergroup1") 
       .withSchedule(CronScheduleBuilder.cronSchedule("0 0 1 * * *")) 
       .build(); 

     //Build Monthly Reports... 
     JobDetail monthlyReport = JobBuilder.newJob(MonthlyReportBuilder.class) 
            .withIdentity("monthlyJob") 
            .build(); 
     //On the first of each month at 12:00am 
     CronTrigger cronTrigger2 = TriggerBuilder.newTrigger() 
       .withIdentity("crontrigger2","crontriggergroup2") 
       .withSchedule(CronScheduleBuilder.cronSchedule("0 0 0 1 * * *")) 
       .build(); 

     //Build Monthly billing Report(Like one created from export button)... 
     JobDetail billingReport = JobBuilder.newJob(BillingReport.class) 
       .withIdentity("monthlyBilling") 
       .build(); 
     //On the first of each month at 12:02am 
     CronTrigger cronTrigger3 = TriggerBuilder.newTrigger() 
       .withIdentity("crontrigger3","crontriggergroup3") 
       .withSchedule(CronScheduleBuilder.cronSchedule("0 2 0 1 * * *")) 
       .build(); 

     //Build Monthly History Report(Like one created from export button)... 
     JobDetail historyReport = JobBuilder.newJob(HistoryReportBuilder.class) 
       .withIdentity("monthlyHistory") 
       .build(); 
     //On the first of each month at 12:04am 
     CronTrigger cronTrigger4 = TriggerBuilder.newTrigger() 
       .withIdentity("crontrigger4","crontriggergroup4") 
       .withSchedule(CronScheduleBuilder.cronSchedule("0 4 0 1 * * *")) 
       .build(); 

     //schedule the jobs 
     SchedulerFactory schFactory = new StdSchedulerFactory(); 
     Scheduler sch = schFactory.getScheduler(); 
     sch.start(); 
     sch.scheduleJob(job, cronTrigger1); 
     sch.scheduleJob(monthlyReport, cronTrigger2); 
     sch.scheduleJob(billingReport, cronTrigger3); 
     sch.scheduleJob(historyReport, cronTrigger4); 

     } catch (SchedulerException e) { 
     e.printStackTrace(); 
     } 
    } 

これは石英とは何かですか?私はそれを初めて知っていて、それについてはあまり知らない。しかし、私は完全に困惑しており、オンラインで検索することで何かを見つけることはできません。

ありがとうございます!

+1

そこにそれを実行するので、ProgramSchedulerはありませんパッケージにありますか? –

+0

クラスを修正します。 GSHはパッケージ – CodeRed

+1

ですので、おそらく 'java ... GSH.ProgramScheduler'を使う必要があります。ただし、[命名規則](https://docs.oracle.com/javase/tutorial/java/package/namingpkgs.html)を覚えておいてください。 –

答えて

0

[OK]を取得しました。 @ jan.supol(コメント参照)のおかげで、私はコマンドプロンプトでメインクラスと同様にパッケージを実行する必要があることに気付きました。 EX:

C:\Users\clind_Site2\workspace\GoldenSheetHelper\src>java -cp .;C:\Users\clind_Site2\mark\Microsoft_JDBC_Driver_6.0_for_SQL_Server\sqljdbc_6.0\enu\sqljdbc42.jar;C:\Users\clind_Site2\mark\jtds\jtds1.3.1.jar;C:\Users\clind_Site2\mark\quartz-2.2.0.jar;C:\Users\clind_Site2\mark\slf4j-1.7.21\slf4j-api-1.7.21.jar;C:\Users\clind_Site2\mark\slf4j-1.7.21\slf4j-simple-1.7.21.jar GSH.ProgramScheduler 

は基本的に私は(.. CD)裏に移動しなければならなかったと

関連する問題