javac 可以处理/包含 `.properties` 文件以便它们出现在输出中吗?

问题描述 投票:0回答:2

目前我正在用 Java 构建一个小型个人项目,这是一个简单的文件服务器。我已经使用

ResourceBundle
实现了基本的国际化。我正在使用
.properties
文件来存储不同语言的消息。

到目前为止,我一直在使用 Vscode 内置的 java 编译过程,该过程正在将

.properties
文件复制到输出中的相应目录中。但是现在我想为那个项目写一个构建脚本。

我的命令是这样的:

javac -d ./bin -cp ./src ./src/**/*.java
.

然而,此命令不考虑

.properties
文件。我在网上搜索
javac
是否有能力以某种方式处理/包含这些文件到输出中,但没有找到答案。我知道我可以使用 Maven 或 Ant,但我想在不使用其他工具的情况下制作这个项目。

java javac properties-file
2个回答
0
投票

回答我自己的问题,但也许有一天有人会发现这很有用。简而言之,

javac
总是编译
.java
文件生成
.class
文件。它无法处理其他文件(来源: 使用 javac 编译时如何设置输出文件).

长话短说,如果你想在你的输出中包含资源、图像、文本文件,任何不是

.java
文件的东西,并且不想使用构建工具,你必须手动复制它或使用
cp
命令在你的构建脚本中。


0
投票

这就是 java .jar 文件存在的目的。你想要create a .jar file并包含你的属性文件,像这样:

jar cvfm myjarname.jar MANIFEST.MF src/*.class my.properties

© www.soinside.com 2019 - 2024. All rights reserved.