欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

idea打jar包,并在linux执行

程序员文章站 2024-02-02 10:30:40
...

idea打jar包,并在linux执行

一:idea打可执行的jar
1:准备

public class ExcuteLinux {
 
    public static String exeCmd(String commandStr) {
 
        String result = null;
        try {
            String[] cmd = new String[]{"/bin/sh", "-c",commandStr};
            Process ps = Runtime.getRuntime().exec(cmd);
 
            BufferedReader br = new BufferedReader(new InputStreamReader(ps.getInputStream()));
            StringBuffer sb = new StringBuffer();
            String line;
            while ((line = br.readLine()) != null) {
                //执行结果加上回车
                sb.append(line).append("\n");
            }
            result = sb.toString();

       int a= ps.waitFor();//判断是否调用成功
       if(a==0){
       System.out.println("success");
       }else{
         System.out.println("error");
       }
 
        } catch (Exception e) {
            e.printStackTrace();
        }
 
        return result;
 
    }
}

main程序入口

public class main {
 
    public static void main(String[] args) {
        String result = ExcuteLinux.exeCmd("ifconfig");
        System.out.println("获取的结果是"+"\n"+result);
 
    }
}

2,idea打jar包
idea-file -projectStructure
idea打jar包,并在linux执行
选择程序入口
idea打jar包,并在linux执行
确定,
idea打jar包,并在linux执行
build-buildArtifacts-build-jar -build
idea打jar包,并在linux执行
复制打好的jar,用winscp或xftp或filezile上传到服务器
idea打jar包,并在linux执行

或用-另一种打jar包方式–利用maven的package,

eclipse打jar参考

https://blog.csdn.net/xiaoguaihai/article/details/42462761?

二:在linux执行

注意:选择jar包所在目录执行java -jar utils.jar

idea打jar包,并在linux执行
执行jar指令要有jdk环境,
测试mv /a/tmp /b
idea打jar包,并在linux执行
如果命令复杂:程序运行正常,但是窗口被锁定

可使用Java -jar utils.jar &

具体参考

https://blog.csdn.net/husong_/article/details/80811224

宿主机执行OK,docker内的无jdk环境,测试linux执行jar失败,
解决
1:docker配置jdk环境参考

https://blog.csdn.net/HXNLYW/article/details/88293515

不建议以上配置,由于docker每次部署要重新配置,比较麻烦
2:配置映射数据卷,建议
配置jdk路径映射容器内,以及路径映射参考

https://blog.csdn.net/zhydream77/article/details/81909706

相关标签: docker