linux下執行java類(運行java定時器)


假如有一個定時器TimerTest.java 

Java代碼   收藏代碼
  1. import java.io.IOException;  
  2. import java.util.Timer;  
  3.   
  4. public class TimerTest {  
  5.    public static void main(String[] args){  
  6.       Timer timer = new Timer();  
  7.       timer.schedule(new MyTask(), 1000, 2000);//在1秒后執行此任務,每次間隔2秒,如果傳遞一個Data參數,就可以在某個固定的時間執行這個任務.  
  8.   
  9.     }  
  10.   }  
  11. }  
  12.   
  13. static class MyTask extends java.util.TimerTask{  
  14.   
  15.     @Override  
  16.     public void run() {  
  17.         System.out.println("Hello AlvinQQ");  
  18.     }  
  19. }  
  20.   
  21. }  



此類所在linux的usr/etc/TimerTest.class 

如果直接用命令運行: 
cd usr/etc/java TimerTest & 
雖然定時器能夠定時啟動,並一直運行,但當你退出終端SecureCRT后,定時器便停止運行。 
這個問題很是讓我頭痛,后來想到通過運行shell腳本來啟動定時器,便解決了。 

Timer.sh腳本如下: 

Java代碼   收藏代碼
  1. #! /bin/sh  
  2.   
  3. cd /usr/etc/  
  4.   
  5. java TimerTest  



保存並退出 

然后運行Timer.sh(sh ./Timer.sh) 
第一次執行shell.sh可能沒有執行權限 
需要賦權 chmod +x Timer.sh 
如果報錯:: bad interpreter: 沒有那個文件或目錄 
則把Timer.sh刪除,重新建一個就可以了 

通過這種方式定時器就能一直在后台運行 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM