仓酷云
标题:
JAVA网页编程之Gradle进门系列(2):第一个Java项目仓酷云
[打印本页]
作者:
分手快乐
时间:
2015-1-18 11:15
标题:
JAVA网页编程之Gradle进门系列(2):第一个Java项目仓酷云
你说是sun公司对她研究的透还是微软?针对自己工具开发的.net网页编程性能上肯定会站上风的。这篇教程的次要内容是解说怎样用Gradle编译和打包一个复杂的Java项目。
该Java项目只要一个需求:我们的构建剧本必需创立一个可实行的Jar文件,换句话说,我们必需可以利用命令
java-jarjarfile.jar
来运转我们的程序。我们来看一下怎样满意这个需求。
创立一个Java项目
我们可使用Java插件(译注:关于Gradle插件的界说,请检察第一篇教程)来创立一个Java项目,为了做到这点,我们必要把上面这段语句到场到
build.gradle
文件中:
1
applyplugin:java
就是如许,如今我们已创立了一个Java项目。Java插件会在我们的构建中增加一些新的商定(如默许的项目布局),新的义务,和新的属性。
让我们来疾速地看一下默许的项目布局。
Java项目布局
默许的项目布局以下:
src/main/java
目次包括了项目标源代码。
src/main/resources
目次包括了项目标资本(如属性文件)。
src/test/java
目次包括了测试类。
src/test/resources
目次包括了测试资本。一切我们构建天生的文件城市在
build
目次下被创立,这个目次涵盖了以下的子目次,这些子目次我们会在这篇教程中提到,别的另有一些子目次我们会放在今后解说。
classes
目次包括编译过的
.class
文件。
libs
目次包括构建天生的
jar
或
war
文件。
为构建到场一个主类(mainclass)
让我们创立一个复杂的主类,在这个类中会打印一个“Helloworld”然后
System.out
出来。这个HelloWorld类的源代码以下:
1
2
3
4
5
6
7
8
packagenet.petrikainulainen.gradle;
publicclassHelloWorld{
publicstaticvoidmain(String[]args){
System.out.println("HelloWorld!");
}
}
HelloWorld
类寄存在
src/main/java/net/petrikainulainen/gradle
目次
这很好,但是,我们还必要编译和打包我们的项目,不是吗?我们先看一下这个Java工程中的义务。
Java工程中的义务
Java插件在我们的构建中到场了良多义务,我们这篇教程触及到的义务以下:
assemble
义务会编译程序中的源代码,并打包天生Jar文件,这个义务不实行单位测试。
build
义务会实行一个完全的项目构建。
clean
义务会删除构建目次。
compileJava
义务会编译程序中的源代码。
我们还能够实行以下命令失掉一个可运转义务及其形貌的完全列表
1
gradletasks
这是一个很好的体例,不必要浏览构建剧本,就可以对你的项目举行大抵的扫瞄,假如我们在项目根目次下运转这个命令,我们能够看到以下输入:
<p>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
>gradletasks
:tasks
------------------------------------------------------------
Alltasksrunnablefromrootproject
------------------------------------------------------------
Buildtasks
-----------
assemble-Assemblestheoutputsofthisproject.
build-Assemblesandteststhisproject.
buildDependents-Assemblesandteststhisprojectandallprojectsthatdependonit.
buildNeeded-Assemblesandteststhisprojectandallprojectsitdependson.
classes-Assemblesclassesmain.
clean-Deletesthebuilddirectory.
jar-Assemblesajararchivecontainingthemainclasses.
testClasses-Assemblesclassestest.
BuildSetuptasks
-----------------
init-InitializesanewGradlebuild.[incubating]
wrapper-GeneratesGradlewrapperfiles.[incubating]
Documentationtasks
-------------------
javadoc-GeneratesJavadocAPIdocumentationforthemainsourcecode.
Helptasks
----------
dependencies-Displaysalldependenciesdeclaredinrootprojectfirst-java-project.
dependencyInsight-Displaystheinsightintoaspecificdependencyinrootprojectfirst-java-project.
help-Displaysahelpmessage
projects-Displaysthesub-projectsofrootprojectfirst-java-project.
properties-Displaysthepropertiesofrootprojectfirst-java-project.
tasks-Displaysthetasksrunnablefromrootprojectfirst-java-project.
Verificationtasks
------------------
<p>
作者:
灵魂腐蚀
时间:
2015-1-20 18:52
在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。
作者:
小女巫
时间:
2015-1-29 14:58
Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。
作者:
只想知道
时间:
2015-2-6 02:12
是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言
作者:
飘飘悠悠
时间:
2015-2-14 00:42
是一种由美国SUN计算机公司(Sun Microsystems, Inc.)所研究而成的语言
作者:
冷月葬花魂
时间:
2015-2-25 17:46
一直感觉JAVA很大,很杂,找不到学习方向,前两天在网上找到了这篇文章,感觉不错,给没有方向的我指了一个方向,先不管对不对,做下来再说。
作者:
若相依
时间:
2015-3-13 22:57
是一种语言,用以产生「小应用程序(Applet(s))
作者:
简单生活
时间:
2015-3-20 20:58
Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
欢迎光临 仓酷云 (http://ckuyun.com/)
Powered by Discuz! X3.2