如何在bash中将java编译成jar

如何在bash中将java编译成jar,java,bash,automation,compilation,Java,Bash,Automation,Compilation,我有一堆*.java文件,我想使用bash脚本将它们编译并打包成一个jar文件,该脚本主要执行以下操作: java_sources=$(find . -type f -name "*.java") javac -g ${java_sources} -classpath ${JAVA_CLASSPATH} java_classes=$(find . -type f -name "*.class") jar cf ${JAVA_DIST}/${JAR_FILE} ${java_classes}

我有一堆*.java文件,我想使用bash脚本将它们编译并打包成一个jar文件,该脚本主要执行以下操作:

java_sources=$(find . -type f -name "*.java")
javac -g ${java_sources} -classpath ${JAVA_CLASSPATH}

java_classes=$(find . -type f -name "*.class")
jar cf ${JAVA_DIST}/${JAR_FILE} ${java_classes}

rm ${java_classes}

是否有一种使用java二进制文件和bash命令执行这些操作的较短方法?我不想使用任何其他自动化工具,如maven等。

这并不短,但我修复了缺少引号和文件名漏洞,这些文件名包含空格、制表符、换行符或其他不可打印字符:

#/usr/bin/env bash

mapfile-d''java_sources<简言之,没有。这就是构建工具被发明的原因。。。。从Make开始。(1976年;见)