gradle项目导出jar包并运行,及简单启动和关闭脚本

这个测试是在如下环境中进:

java version "1.8.0_211"

Gradle 5.5

Linux version 4.15.0-54-generic (gcc version 7.4.0 (Ubuntu 7.4.0-1ubuntu1~18.04.1))

intellij


1、在intellij idea 中创建测试项目:File -> New -> Project -> New Project

Next

 输入项目的 GroupId  和 ArtifactId

输入项目名称(Project name)

2、项目构建完后,在Java插件两个测试类 Greeter.java 和 HelloWorld.java

Greeter.java

public class Greeter {
    public String sayHello() {
        return "Hello world!";
    }
}

HelloWorld.java

import java.util.Date;

public class HelloWorld {
    public static void main(String[] args) {
        Date currentTime = new Date();
        System.out.println("The current local time is: " + currentTime.toString());
        int i = 0;
        while (i++ < 15){
            System.out.println("sleep " + i + "s");
            try {
                Thread.sleep(1000);
            }catch (Exception e){
                System.out.println(e.getMessage());
            }

        }
        Greeter greeter = new Greeter();
        System.out.println(greeter.sayHello());
    }
}

3、构建项目:双击build 进行构建

构建完成后在项目根目录下生成一个build文件夹,所需jar包在 build/libs文件夹下

4、给 20190722-1.0-SNAPSHOT.jar 中 META-INF/MANIFEST.MF 文件添加上

       Main-Class: HelloWorld

 

5、运行jar文件: cd 到 20190722-1.0-SNAPSHOT.jar  所在目录,执行  

    java -jar 20190722-1.0-SNAPSHOT.jar

 结果为:

The current local time is: Mon Jul 22 15:39:01 CST 2019
sleep 1s
sleep 2s
sleep 3s
sleep 4s
sleep 5s
sleep 6s
sleep 7s
sleep 8s
sleep 9s
sleep 10s
sleep 11s
sleep 12s
sleep 13s
sleep 14s
sleep 15s
Hello world!

 


另外:简单的启动和关闭脚本(脚本放在和jar文件同一目录下)

a5673@gzr023:~/xuzj/bak/20190722_testGradle/build/libs$ cat startup.sh 
echo "start ..."
echo $(pwd)
dir=$(pwd)
jar1=${dir}/20190722-1.0-SNAPSHOT.jar
java -jar ${jar1} >/${dir}/output.file 2>&1 &
echo $! > ${dir}/id.pid
echo "finish ..."

a5673@gzr023:~/xuzj/bak/20190722_testGradle/build/libs$ cat shutdown.sh 
pid=$(cat ./id.pid)
echo $pid
rm ./id.pid
ls -la

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值