Java 在字符串中使用@符号

Java 在字符串中使用@符号,java,string,variables,Java,String,Variables,在几个开源java项目中,我看到了在字符串变量中使用@符号,这是做什么的 例如,我在一个版本号存储在字符串实例中的应用程序中看到了它,例如: public static final String APP_VERSION = "@VERSION@"; 它用于构建脚本作为标记,用构建时信息(如真实版本)替换这些字符串。真正的信息通常取自属性文件或时间戳。将@放在字符串中没有任何特殊作用(对于Java)。不过,这个例子看起来很奇怪。在编译之前,构建脚本可能会用实际版本号替换该值。也可能字符串正在完全

在几个开源java项目中,我看到了在字符串变量中使用@符号,这是做什么的

例如,我在一个版本号存储在字符串实例中的应用程序中看到了它,例如:

public static final String APP_VERSION = "@VERSION@";

它用于构建脚本作为标记,用构建时信息(如真实版本)替换这些字符串。真正的信息通常取自属性文件或时间戳。

@
放在字符串中没有任何特殊作用(对于Java)。不过,这个例子看起来很奇怪。在编译之前,构建脚本可能会用实际版本号替换该值。也可能字符串正在完全执行其他操作。

@VERSION@
视为变量,而不仅仅是名为“VERSION”的字符串。在构建过程中,
@VERSION@
将替换为版本号。如果字符串只是
“VERSION”
,则不会被替换。它似乎是“另一个字符串”。另一个常见的模式是
$Id$
等,由SVN在提交时使用,而不是在构建时使用。啊,那么在构建脚本中,您将如何定义替换它的内容?我正在使用一个xml文件来编译这个项目。这在不同的工具中是不同的。在Ant-see中,对于Maven-see