考虑一个配置类,它需要为每个 Eclipse 项目解析不同的配置文件。
例如,如果从 Project1
调用 Configuration
类,它应该解析 special/path/fileX
,如果它被调用来自 Project2
,它应该解析 special/path/fileY
。
我试过了 using Eclipse's {project_name}
, 但令人惊讶的是,它被解析为光标突出显示的项目,而不是当前类的父项目。
关于如何在 Eclipse Runtime 中区分一个项目和另一个项目有什么想法,最好是使用 JVM 参数?
最佳答案
这是您描述的问题的解决方法,但我想这是一个更好的解决方案,因为它独立于 Eclipse,并且也很容易在生产环境中工作。
无论您从哪个项目开始,只需从类路径加载相同的文件:
/my/file/from/classpath.txt
但是只把这个文件放在 Project1/Project2 中,这样各个文件就会根据你的设置相互排斥:
/Project1/src/my/file/from/classpath.txt
/Project2/src/my/file/from/classpath.txt
其中 src
是 Java 源文件夹。现在您仍然可以使用您的 JVM 参数来覆盖它,或者在缺少上述参数时提供默认值。
关于java - Eclipse:获取项目名称作为 VM 参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10415007/