构建应用
优质
小牛编辑
144浏览
2023-12-01
通常,构建工具是maven,ant或者gradle。但是,也可以只用make
:make clean && make -j2 && sudo make install
搞定一切。
假设开发者同时安装了java,groovy,scala和kotlin四种语言开发环境,其应用可能用到四种语言中的至少一种。只要设置好了各语言相关的环境变量:JAVA_HOME
,GROOVY_HOME
以及SCALA_HOME
和KOTLIN_HOME
,并根据这三项,设置好了最重要的CLASSPATH
,
那么,Makefile
的基本写法如下:
PRO=app.jar
ifndef NGINX_INSTALL_DIR
NGINX_INSTALL_DIR=/usr/local/nginx
endif
JAVAC = ${JAVA_HOME}/bin/javac
JAVA_FLAGS =-classpath .:${CLASSPATH}
GROOVYC = ${GROOVY_HOME}/bin/groovyc
GROOVY_FLAGS = $(JAVA_FLAGS)
SCALAC = ${SCALA_HOME}/bin/scalac
SCALAC_FLAGS = $(JAVA_FLAGS)
KOTLINC = ${KOTLIN_HOME}/bin/kotlinc
KOTLINC_FLAGS = $(JAVA_FLAGS) -jvm-target 1.8
JAR = ${JAVA_HOME}/bin/jar
JAR_FLAGS = cfv
default: ${PRO}
${PRO}:
find . -name *.java -type f > java_src.list && \
$(JAVAC) $(JAVA_FLAGS) @java_src.list
find . -name *.groovy -type f > groovy_src.list && \
$(GROOVYC) $(GROOVY_FLAGS) @groovy_src.list
find . -name *.scala -type f > scala_src.list && \
$(SCALAC) $(SCALAC_FLAGS) @scala_src.list
find . -name *.kt -type f > kotlin_src.list && \
$(KOTLINC) $(KOTLINC_FLAGS) @kotlin_src.list
find . -name *.class -type f > class.list && \
$(JAR) $(JAR_FLAGS) ${PRO} `cat class.list`
clean:
rm -f ${PRO} java_src.list groovy_src.list scala_src.list kotlin_src.list `cat class.list` class.list
install:${OBJ}
install ${PRO} $(NGINX_INSTALL_DIR)/java
开发者酌情修改以适配自己的需要即可。