当前位置: 首页>编程语言>正文

vim搭建java开发环境代码补全 vim 开发java

简介

IDE,IDE,IDE,集成开发环境当然好啦,可以有效的组织工程结构,有语法高亮,自动提示等等功能(如: eclipse, idea等等)。但是,有时我们在一个只有命令行界面的机器上,开发一个java小工具,没必要搞那么复杂吧,下面是我正在开发的一个小设备的初始化工具,looklook,纯纯的命令行。

先看项目结构树

vim搭建java开发环境代码补全 vim 开发java,vim搭建java开发环境代码补全 vim 开发java_java,第1张

一、modules目录

放的是基础功能类
devio.java:通过jna模块调用libtih_usb3_comm.so,实现设备枚举、设备打开、设备通信,关闭设备连接等功能。
devfunc.java: 通过调用devio的通信接口,调用设备的硬件功能。
util.java: 里面就是一些类型转换,解析之类的常用函数。

二、libs目录

放的是jna模块的jar包以及c动态库(设备通信库)

三、bin目录

通过make生成的工具,以jar包的形式输出到bin目录。同时make的同时,可以把libs目录复制到bin目录,以便于后期工具的发布(直接复制bin目录到其他机器上就可以了)。

四、classes目录:

通过make - javac 生成的.class文件,临时存放到classes目录下,待生成jar包后,直接删除掉。

五、init.java

工具的main入口在这里。

六、Makefile

当然是主角了,所有的编译过程都在这里了,内容如下:

CLASSPATH=-cp .:libs/jna-4.1.0.jar
all:
    javac $(CLASSPATH) -d classes modules/devio.java
    javac $(CLASSPATH) -d classes modules/devfunc.java
    javac $(CLASSPATH) -d classes modules/util.java
    jar cvf bin/modules.jar -C classes .
    rm -fr classes/* bin/tassu1.log
    cp -fr ./libs ./bin
    @javac -cp bin/modules.jar -d classes init.java
    jar -cvfe bin/init.jar init -C classes .
    rm -fr classes/* bin/tassu1.log


run:
    cd ./bin && java -Djava.ext.dirs=.:./libs -jar init.jar

Makefile解释

1. 设置CLASSPATH

CLASSPATH=cp .:libs/jna-4.1.0.jar
javac 根据设置好的路径寻找依赖的jar包,本文中只是寻找jna包。

2. all 开始编译

前3行,编译modules中的java类,生成的.class文件放到classes文件夹中。
第4行,把编译好的.class文件压缩成jar包,生成到bin文件夹。
第5行,删除classes中的.class文件,没用了。
第6行,把libs目录拷贝到bin目录。
第7行,编译init工具,将生成的.class文件放到classes文件夹中。(注意:因为init工具依赖的是modules.jar, 所以-cp换成bin/modules.jar)。
第8行,把init.class压缩成init.jar, 并指定main函数所在的类。
第9行,删除classes中的.class文件。

编译过程如图

vim搭建java开发环境代码补全 vim 开发java,vim搭建java开发环境代码补全 vim 开发java_vim搭建java开发环境代码补全_02,第2张

3. 测试

直接在命令行下,输入:make run就可以执行init.jar包了。

vim搭建java开发环境代码补全 vim 开发java,vim搭建java开发环境代码补全 vim 开发java_jar_03,第3张

cd ./bin && java -Djava.ext.dirs=.:./libs -jar init.jar

意思是,先从Makefile所在路径切换到bin路径,然后执行后面的java指令。

-Djava.ext.dirs 指定了init.jar的依赖包的搜寻路径。

发布

bin目录发布后,就没有了上文提到的make run指令了,那怎么办呢?

init.sh

在bin文件夹下,有一个实现写好的init.jar启动脚本,可以直接运行这个脚本启动程序。
init.sh脚本内容如下:

#/usr/bin/bash
java -Djava.ext.dirs=.:./libs -jar init.jar

完!



https://www.xamrdz.com/lan/5dy1931470.html

相关文章: