为了实现一个在linux服务器上定时运行的java任务,想简单直接的用带main方法的class实现,实现过程中还是遇到了两个问题,在这里记录一下
1、本机IDE环境运行正常,但是上传的linux服务器后,编译报错
xxxx.java:1: error: package org.apache.commons.httpclient does not exist
import org.apache.commons.httpclient.HttpClient;
xxxx.java:2: error: package org.apache.commons.httpclient does not exist
import org.apache.commons.httpclient.UsernamePasswordCredentials;
xxxx.java:3: error: package org.apache.commons.httpclient.auth does not exist
import org.apache.commons.httpclient.auth.AuthScope;
xxxx.java:4: error: package org.apache.commons.httpclient.methods does not exist
import org.apache.commons.httpclient.methods.GetMethod;
xxxx.java:5: error: package org.apache.commons.io does not exist
import org.apache.commons.io.IOUtils;
解决方法:之前的方法是写的maven工程里的,根据pom找到了引入的jar包,所以就需要手动下载一下这些包,然后在传到/usr/java/jdk/jre/lib/ext/下面,一共需要下面几个包

2、可执行class上传后,需要在服务上定时执行,所以方法就是用crontab -e编写一个定时任务
*/2 * * * * /usr/java/jdk1.7.0_51/bin/java -cp /home/ FM >>/home/FM.log 2>&1
网友评论