【发布时间】:2014-01-22 10:58:43
【问题描述】:
我已经在 Tomcat 7 上部署了我的 Rest API。
部署在以下路径:
/var/lib/tomcat7/webapps/myproject
我有一个 Jar 文件保存在这个位置:
/home/user/executor/datacollector.jar
从我的应用程序运行此 jar 时遇到问题。使用此代码调用时它没有运行。
我的运行代码是:
ProcessBuilder pb = new ProcessBuilder("java", "-jar", "/home/user/executor/datacollector.jar");
Process p = pb.start();
ResultStream resultStream = new ResultStream(p.getInputStream());
Thread thread = new Thread(resultStream , "resultStream");
thread.start();
public class ResultStream implements Runnable {
private static Logger logger = Logger.getLogger("ResultStream");
private BufferedReader reader;
public ResultStream(InputStream is) {
this.reader = new BufferedReader(new InputStreamReader(is));
}
public void run() {
try {
String line = reader.readLine();
logger.info("line - "+line);
while (line != null) {
logger.info(line);
line = reader.readLine();
}
reader.close();
} catch (IOException e) {
logger.error("IOException in executing jar",e);
// e.printStackTrace();
}
catch (Exception e) {
logger.error("Error in executing jar",e);
// e.printStackTrace();
}
}
}
路径有什么问题吗,因为它在Tomcat的webapps文件夹之外。
请指出我的错误。
【问题讨论】:
-
在调用 RESTFul 服务时是否出现异常?有什么理由不在类路径中添加 jar?
-
没有..没有得到任何异常。并且 Jar 可以从其他 2 个应用程序访问。所以放在外面。