• Gradle学习笔记(1)创建简单的Java项目


      Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化构建工具。它使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,抛弃了基于XML的各种繁琐配置。当前其支持的语言限于Java、Groovy、Kotlin和Scala,主要面向Java应用。
      本次分享将具体讲述如何利用Gradle来创建一个简单的Java项目。
      首先我们新建一个文件夹javaProgram作为展示的Java项目。
      接着输入以下命令进行项目布局:

    cd javaProgram
    touch build.gradle
    mkdir -p src/main/java
    mkdir -p src/main/resources
    mkdir -p src/test/java
    mkdir -p src/test/resources
    

    先新建了build.gradle,这是我们用Gradle来创建项目必不可少的gradle文件。build.gradle中的代码如下:

    apply plugin: 'java'
    

    这是用来定义Java项目。接着创建文件夹,这是Java项目开发中习惯性的构建方法。
      布局完毕后,我们就可以加入自己的packagele. 在/src/main/java中新建guess文件夹,在该文件夹下创建GuessNumber.java,其完整代码如下:

    package guess;
    
    import java.util.Scanner;
    
    public class GuessNumber {
    
    	public static void main(String[] args) {
    		//Generate a number to be guessed
    		int number = (int)(Math.random()*101);
    
    		Scanner input = new Scanner(System.in);
    		System.out.println("Guess a number between 0 and 100");
    		
    		int guess = -1;
    		while(guess != number) {
    			//Prompt the user to guess the number
    			System.out.print("
    Enter your guess: ");
    			guess = input.nextInt();
    			
    			if(guess == number) 
    				System.out.println("Yes, the number is "+number);
    			else if(guess > number) 
    				System.out.println("Your guess is too high!");
    			else
    				System.out.println("Your guess is too low!");
    		}//End of loop
    	}
    }
    

    该代码用于模拟猜数字游戏,具体代码并不是本次分享的重点。
      再切换到javaProgram下,运行以下命令来构建项目:

    gradle build
    

    运行结果如下:

    此时我们发现javaProgram文件夹下会多出build文件夹,如下图:

    ![javaProgram文件夹](https://img-blog.csdn.net/20180329220133638?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2pjbGlhbjkx/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
    其中build文件夹的树形结构如下:
    ![build文件夹](https://img-blog.csdn.net/20180329220436259?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2pjbGlhbjkx/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
    可以看到,在build/libs文件夹下生成了javaProgram.jar包,而这正是我们需要的jar包。尝试着运行这个jar包:
    ![运行jar包](https://img-blog.csdn.net/20180329220715482?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2pjbGlhbjkx/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
    运行出错,并且出错信息为“no main manifest attribute”,这是因为我们并没有在jar包中配置主类(main class).   所以,接下来的一步,也是最后一步:配置main class. 这只需要将build.gradle中修改如下: ``` apply plugin: 'java'

    jar {
    manifest {
    attributes 'Main-Class': 'guess.GuessNumber'
    }
    }

    再次运行“gradle build”创建(build)项目,将会重新生成javaProgram.jar包。
      我们尝试着再次运行jar包,如下图:
    <center>
    ![再次运行jar包](https://img-blog.csdn.net/20180329221437248?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2pjbGlhbjkx/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
    </center>
    bingo,终于运行成功了!这对于一个初学Gradle的人来说,是一件多人令人欢欣鼓舞的事情!
    &emsp;&emsp;本次分享到此结束,欢迎大家交流~~
  • 相关阅读:
    模拟赛总结
    2018.04.06学习总结
    2018.04.06学习总结
    Java实现 LeetCode 672 灯泡开关 Ⅱ(数学思路问题)
    Java实现 LeetCode 671 二叉树中第二小的节点(遍历树)
    Java实现 LeetCode 671 二叉树中第二小的节点(遍历树)
    Java实现 LeetCode 671 二叉树中第二小的节点(遍历树)
    Java实现 LeetCode 670 最大交换(暴力)
    Java实现 LeetCode 670 最大交换(暴力)
    Java实现 LeetCode 670 最大交换(暴力)
  • 原文地址:https://www.cnblogs.com/jclian91/p/8672859.html
Copyright © 2020-2023  润新知