gpt4 book ai didi

java - 可以用ant修改源码吗?

转载 作者:行者123 更新时间:2023-12-01 06:31:42 25 4
gpt4 key购买 nike

我想在我的程序中进行条件编译。我知道,如果您声明一个 public static final boolean ,编译器将忽略未遍历的分支。是否可以让 ant 目标在构建程序之前更改变量?

例如,如果我有:


最终公共(public)静态 boolean 窗口= false;

我想要两个 ant 目标:Windows 和 Mac。我想要命令
Ant 窗
将 boolean 值更改为 true,同时
Ant 麦克
保持变量不变。

谢谢。

最佳答案

您可以让 Ant 修改属性文件,然后您可以轻松地在应用程序中读取该文件:
new Properties(new FileInputStream("filename" / new File(filename)) ),

并使用以下方式读取属性:
Boolean isWindows = new Boolean(properties.getProperty("windows"))

或:
String os = properties.getProperty("os")

您可以使用 Ant PropertyFile执行此操作的任务:http://ant.apache.org/manual/Tasks/propertyfile.html .

编辑:如果您绝对必须使用 Ant 编辑源代码文件,这里有使用另一个任务的替代方法:

<replaceregexp file="blah.java" match="public static final boolean WINDOWS = \"(.*)\"" replace="public static final boolean WINDOWS = \"" + ${properties.windows} + "\"" />
-- 根据需要将代码替换为您自己的代码。请参阅http://ant.apache.org/manual/Tasks/replaceregexp.html了解详情。

关于java - 可以用ant修改源码吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2338841/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com