技术解析

请教一个关于 java build 的低级问题
0
2021-07-05 03:48:47
idczone
因为一直都搞 C/S 架构的控制软件,所以只会 C/C++ 和 python (python 主要用于数据分析处理、控制软件客户端或者调试、测试工具开发) ,团队有一个懂点 java 的又出长差去了。我对于 java 语言, web 系统等这些高大上的技术那是一点儿也不懂 (只能以后慢慢学习了,现在救急是来不及了)

我现在有一套 java 源代码(参见 https://sourceforge.net/p/tango-cs/code/HEAD/tree/archiving/hdb++/gui/jhdbviewer/trunk/ ),我知道它的功能、使用方法以及他依赖哪些其他的 jar 包,也大概知道 CLASSPATH 配置,就是不知道这些*.java 和*.form 文件如何 make(对不起,我只能借用 C++ 项目的概念了,不知道 java 程序叫 make 还是 build 还是打包....)出来,看他的 xml 文件内容,好像是类似 C++项目的工程文件,但是我不知道如何用这个文件,比如对于 C++ 项目,我把 Makefile 一写好,然后 make && make install 就搞定,而对于这个东西不知道如何 build

我的系统是 CentOS 7 , jre 和 jdk 都是安装好的,请大家用指导小学生的方法指导一下子如何整?

另外,我想学习了解一下子 java 源程序文件如何 make/build ,不太想去深入了解 java 语言和库,只用开源现成的,有没有推荐的书看一看啊
1. 安装 Apache Ant ,加入 PATH
2. 到那个含有"build.xml"的目录下,运行"ant"
3. 结果应该会在 dist 文件夹里

看到楼主把 java 和 web 技术定义为高大上的技术,作为一个 java 程序员感到有点害羞啊,在我看来懂 c 和 cpp 的 java 要高大一点, web 技术也不是什么高大上的技术
扯远了,现在 java 项目的 build 大多用 ant , maven 。在项目的根目录下看到有 build.xml ,是要用 ant 来 build 的,如果看到有 pom.xml ,则使用 maven 来 build 的。两种 build 方式共存的也有。

Ant 是 Java 界的 make , build.xml 相当于 Makefile




谢谢三位,我来安装一个 ant 试一试

貌似完全可以把 make 用在 java 上?
```makefile
all:jnilib.dylib
jnilib.dylib:hellojni.o
gcc -dynamiclib -o libjni.jnilib hellojni.o
hellojni.o: hellojni.cpp hellojni.h
gcc -I /Library/Java/JavaVirtualMachines/jdk1.8.0_51.jdk/Contents/Home/ include -I /Library/Java/JavaVirtualMachines/jdk1.8.0_51.jdk/Contents/Home/ include/darwin/ -c hellojni.cpp
hellojni.h:hellojni.class
javah -jni hellojni
hellojni.class:hellojni.java
javac hellojni.java
clean:
-rm hellojni.h
-rm hellojni.o
-rm libjni.jnilib
-rm hellojni.class
```

数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服