我有一个程序引用了我们网络驱动器上的一个文件(“PricingMaster.omas”),但是当我进行 Beta 测试时,我使用了一个不同的文件(“PricingMasterBetaTest.omas”)。目前我手动将字符串从一个更改为另一个。
所以:
File masterFile = new File("g:/DataTeam", "PricingMasterBetaTest.omas");
变成:
File masterFile = new File("g:/DataTeam", "PricingMaster.omas");
这实际上发生在几个文件的几个地方,所以,正如您可能想象的那样,有时我会忘记,我的用户最终会很困惑。所以我想知道是否有一种方法可以让我根据我正在编译它的目的来确定使用哪个字符串?
我试过问谷歌,但我缺乏正确措辞问题的知识。在我看来,伪代码看起来像这样:
@CompileDebug
File masterFile = new File("g:/DataTeam", "PricingMasterBetaTest.omas");
@CompileRelease
File masterFile = new File("g:/DataTeam", "PricingMaster.omas");
我在 Eclipse 中做这个项目,所以也许这是 Eclipse 可以帮助我的一个技巧?如果可能的话,我也不反对在 Ant 中这样做。抱歉,我知道我有点含糊(或含糊),我只是今天的 Google-fu 表现不佳。
最佳答案
基本上您遇到这个问题是因为您硬编码您的字符串。理想情况下,应该将此类字符串外部化到 .properties
文件中,然后您可以在该文件中指向另一个文件,而无需重新编译程序。
这并不难做到。 Eclipse 带有内置的 Externalise Strings
功能,可以为您处理所有 Java 代码。其他任何事情都只是在绕过这个问题。
Eclipse 的 Source
菜单:
关于java - 在 Java 中编译一行而不是另一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17307403/