增加jre配置,支持jre8和jre17

master
王兵 5 months ago
parent db8b40733b
commit 5dbae3dfda

@ -6,7 +6,7 @@
<groupId>xyz.wbsite</groupId> <groupId>xyz.wbsite</groupId>
<artifactId>deployee-maven-plugin</artifactId> <artifactId>deployee-maven-plugin</artifactId>
<version>2.0.4-SNAPSHOT</version> <version>3.0.1-SNAPSHOT</version>
<packaging>maven-plugin</packaging> <packaging>maven-plugin</packaging>
<description>deployee</description> <description>deployee</description>

@ -3,14 +3,16 @@ package xyz.wbsite.deployee;
import cn.hutool.core.convert.Convert; import cn.hutool.core.convert.Convert;
import cn.hutool.core.io.resource.ResourceUtil; import cn.hutool.core.io.resource.ResourceUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import org.apache.maven.plugin.AbstractMojo;
import org.apache.maven.plugin.MojoExecutionException;
import xyz.wbsite.deployee.config.Server; import xyz.wbsite.deployee.config.Server;
import xyz.wbsite.deployee.util.IOUtil; import xyz.wbsite.deployee.util.IOUtil;
import xyz.wbsite.deployee.util.NetUtil; import xyz.wbsite.deployee.util.NetUtil;
import xyz.wbsite.deployee.util.TaskUtil; import xyz.wbsite.deployee.util.TaskUtil;
import xyz.wbsite.deployee.util.ssh.JSshClient; import xyz.wbsite.deployee.util.ssh.JSshClient;
import xyz.wbsite.deployee.util.ssh.SshSimpleProgress; import xyz.wbsite.deployee.util.ssh.SshSimpleProgress;
import org.apache.maven.plugin.AbstractMojo;
import org.apache.maven.plugin.MojoExecutionException; import xyz.wbsite.deployee.config.Server.JreVersion;
import java.io.File; import java.io.File;
import java.io.IOException; import java.io.IOException;
@ -71,7 +73,7 @@ public class Deploy extends AbstractMojo {
printLog(serverPath); printLog(serverPath);
if (!client.exist(serverPath)) { if (!client.exist(serverPath)) {
try { try {
printLog("start install jre"); printLog("start upload jre");
printLog("create dir " + serverPath); printLog("create dir " + serverPath);
boolean dirs = client.createDirs(serverPath); boolean dirs = client.createDirs(serverPath);
@ -81,9 +83,16 @@ public class Deploy extends AbstractMojo {
throw new MojoExecutionException(StrUtil.format("create dirs[{}] failed.", serverPath)); throw new MojoExecutionException(StrUtil.format("create dirs[{}] failed.", serverPath));
} }
InputStream stream = ResourceUtil.getStream("jre.tar.gz"); JreVersion jreVersion = server.getJre() != null ? server.getJre() : JreVersion.jre8;
String jreFileName = jreVersion.name() + ".tar.gz";
printLog("use jre version: {}", jreVersion.name());
InputStream stream = ResourceUtil.getStream(jreFileName);
if (stream == null) {
throw new MojoExecutionException(StrUtil.format("jre resource [{}] not found.", jreFileName));
}
client.putFile(stream, serverPath + "/jre.tar.gz", new SshSimpleProgress() { client.putFile(stream, serverPath + "/" + jreFileName, new SshSimpleProgress() {
@Override @Override
public void update(int process) { public void update(int process) {
System.out.print(StrUtil.format("[INFO] upload jre {}", process + "%\r")); System.out.print(StrUtil.format("[INFO] upload jre {}", process + "%\r"));
@ -91,12 +100,12 @@ public class Deploy extends AbstractMojo {
}); });
printLog(StrUtil.format("upload jre {}", "finish")); printLog(StrUtil.format("upload jre {}", "finish"));
printLog("unpackage [jre.tar.gz]"); printLog("unpackage [{}]", jreFileName);
client.exec("cd {}", serverPath); client.exec("cd {}", serverPath);
client.exec("tar -zxvf {} -C {}", serverPath + "/jre.tar.gz", serverPath); client.exec("tar -zxvf {} -C {}", serverPath + "/" + jreFileName, serverPath);
printLog("delete [jre.tar.gz]"); printLog("delete [{}]", jreFileName);
client.deleteFile(serverPath + "/jre.tar.gz"); client.deleteFile(serverPath + "/" + jreFileName);
printLog("create dir [jar]"); printLog("create dir [jar]");
client.createDirs(serverPath + "/jar"); client.createDirs(serverPath + "/jar");

@ -42,6 +42,17 @@ public class Server {
*/ */
private String deployPort; private String deployPort;
/**
* JREjre8, jre17
* @parameter defaultValue="jre8"
*/
private JreVersion jre;
public enum JreVersion {
jre8,
jre17
}
public String getName() { public String getName() {
return name; return name;
} }
@ -105,4 +116,12 @@ public class Server {
public void setDeployPort(String deployPort) { public void setDeployPort(String deployPort) {
this.deployPort = deployPort; this.deployPort = deployPort;
} }
public JreVersion getJre() {
return jre;
}
public void setJre(JreVersion jre) {
this.jre = jre;
}
} }

Binary file not shown.
Loading…
Cancel
Save

Powered by TurnKey Linux.