我正在尝试将命令行参数间接传递给文件。这是通过类加载器加载的类所使用的东西,因此它们无权访问程序的 main 方法。
我知道我可以通过以下方式获取 JVM 参数:
RuntimeMXBean RuntimemxBean = ManagementFactory.getRuntimeMXBean();
List<String> arguments = RuntimemxBean.getInputArguments();
但是请阅读 javadoc对于 RuntimeMXBean
我似乎无法弄清楚如何获取其余参数。
我还尝试通过以下方式获得有趣的命令行执行:
String arguments = System.getProperty("sun.java.command")
然而,这也不适用于 java 的每个实现。这可能吗?如果可能的话,如何实现?
编辑:澄清一下,我没有能力修改加载类文件的原始项目。
最佳答案
我对此类问题不是很有经验,但是您不能为正在加载的类创建一个实例字段和一个存储主程序参数的字段,然后将参数的值分配给该实例字段吗?
关于java - 间接获取命令行参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20157217/