0、前言
最近因为要为项目开发一个底层的Java应用,所以非常偶然的遇到了这样一个问题,过去Eclipse有Java Project而现在手头使用Android Studio并不能直接建立Java应用项目。所以在网上搜集和整合了些资料后发现其实Android Studio也能很完美的支持Java应用项目的开发,所以写这样一篇博客分享给有同样需要的Coder。
1、J2EE项目的建立
Android Studio中并不能直接建立Java项目,所以比较简单偷懒的办法是先随便建一个Android项目,然后再给Project添加一个Java Library Module,这样就你的项目中就有了一个Java模块,你在Android Studio的Gradle窗口中可以找到build、jar之类的Task,运行这些Task即可构建与打包,但需要注意,这时并不能直接运行该Java模块,因为并没有为这个模块建立运行脚本。
2、为Java Library建立运行脚本
如果你要将Java Library模块转换为一个可以直接运行的Application模块,其实非常简单,只要点击Run菜单中的Edit Configurations,然后在左侧可以看到若干的运行脚本,点击左上角的“+”,然后加入一个Application配置,然后选中新加的配置,可以看到其中有Main Class(指定你的Main方法类啦)、VM Option(可以设置堆大小之类的)、Program Arguments(可以设置运行参数)、Use Classpath of Module(设置关联哪个Module的ClassPath)还有是否开启Form截图、是否使用自定义JRE之类的。
那我我们一般需要做的事情,首先,要将Main Class设置为你Java Library Module中期望运行的那个带main方法的类,其次要将Use Classpath of Module设置为你建的那个Java Library Module,这样就基本完成了一个执行脚本的配置。
然后还需要做一件事情就是在Gradle中设置Main Class,打开Java Library Module中的build.gradle文件,将其改为如下:
1 apply plugin: ‘java‘ 2 apply plugin: ‘application‘ 3 4 mainClassName = ‘org.hanos.java.MainApplication‘ 5 6 dependencies { 7 compile fileTree(dir: ‘libs‘, include: [‘*.jar‘]) 8 }
需要注意其中的application插件与mainClassName,完成这一步后,试试运行新建的脚本吧~~
3、为Java Library打可执行的Jar包
这个其实非常简单,只需要修改build.gradle即可:
1 apply plugin: ‘java‘ 2 apply plugin: ‘application‘ 3 4 mainClassName = ‘org.hanos.java.MainApplication‘ 5 6 jar { 7 manifest { 8 attributes ‘Main-Class‘: mainClassName 9 } 10 baseName = ‘HFrameJava‘ 11 version = ‘0.1.0‘ 12 } 13 14 dependencies { 15 compile fileTree(dir: ‘libs‘, include: [‘*.jar‘]) 16 }
其中,manifest表示所需要打的Jar包中的清单需要加入一些什么属性,可执行jar包需要加上Main-Class指明运行的主方法类,baseName表示打出jar包的名称,version表示版本号,完成这个build.gradle的编写后,sync项目,然后执行jar task即可在<Module>/build/outputs/libs中找到jar包