|
@@ -20,8 +20,6 @@ public class GploadUtil {
|
|
|
GploadResult result = new GploadResult();
|
|
|
try {
|
|
|
Process process = Runtime.getRuntime().exec(gploadCommand);
|
|
|
- int exitCode = process.waitFor();
|
|
|
- result.setTaskStatus(exitCode == 0);
|
|
|
reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
|
|
|
List<String> lines = new ArrayList<>();
|
|
|
String line;
|
|
@@ -59,10 +57,21 @@ public class GploadUtil {
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+ int exitCode = process.waitFor();
|
|
|
+ result.setTaskStatus(exitCode == 0);
|
|
|
+ if (Thread.interrupted()) {
|
|
|
+ log.error("gpload线程阻塞");
|
|
|
+ XxlJobHelper.log("gpload线程阻塞");
|
|
|
+ throw new InterruptedException();
|
|
|
+ }
|
|
|
} catch (IOException | InterruptedException e) {
|
|
|
- e.printStackTrace();
|
|
|
+ log.debug("gpload发生异常: {}", e.getMessage(), e);
|
|
|
+ XxlJobHelper.log("gpload发生异常: {}", e.getMessage(), e);
|
|
|
result.setTaskStatus(false);
|
|
|
result.setMessage(e.getMessage());
|
|
|
+ if (e instanceof InterruptedException) {
|
|
|
+ Thread.currentThread().interrupt();
|
|
|
+ }
|
|
|
} finally {
|
|
|
log.debug("gpload的结果为: {}", result);
|
|
|
XxlJobHelper.log("gpload的结果为: {}", result);
|