linux下配置定时执行java脚本的Main方法
我的最开始的需求是要执行一个脚本,每天解析服务器中的文件,将文件中的数据加入oracle数据库
一头雾水?????????
1:一直都在写wab程序,可以用Spring的quartz给需要的项目配置定时,可是我这个需求,不需要web项目,只要写一个函数就可以了,可是这怎么配置定时呢
于是上网+请教学长
方法如下:
将我的脚本打成jar包,把main方法打成jar包时的候配置好。我的项目是maven项目,在pom中添加如下配置:
<build>
<finalName>test_maven</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.4</version>
<configuration>
<archive>
<manifest>
<!-- 设置主方法的位置 /main方法所在的类-->
<mainClass>com.beauty.Beauty</mainClass>
</manifest>
</archive>
<descriptorRefs>
<descriptorRef>
jar-with-dependencies
</descriptorRef>
</descriptorRefs>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
打包 仍在linux下 配置定时就可以了
2:linux下配置定时
连接linux 然后输入crontab -e 命令,之后的操作和vi是一样的
37 11 * * * /usr/java/jdk1.6.0_30/bin/java -jar /home/webadmin/test_maven-jar-with-dependencies.jar >/dev/null 2>/home/webadmin
37 11 * * *:表示每天的11点37分执行,注意linux的是没有秒的【分 时 日 月 年】
/usr/java/jdk1.6.0_30/bin/java:这个一定要注意,直接用 java -jar 执行是不好使的,必须用java的全路径
2>/home/webadmin:定时的错误日志可以输出到/home/webadmin
查看linux定时任务 crontab -l
学到的小知识点随笔记~~~