Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/400.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
解析使用率跟踪程序的Java属性文件中的用户名_Java_Properties File - Fatal编程技术网

解析使用率跟踪程序的Java属性文件中的用户名

解析使用率跟踪程序的Java属性文件中的用户名,java,properties-file,Java,Properties File,我正在尝试使用Java使用情况跟踪程序来审核Java使用情况。请参阅以下信息: 属性文件中的一个属性指定保存日志的位置(用户的主位置): 这将正确创建文件:C:\Users\CURRENTUSER\.java\u usagetracker 如何将当前用户的登录名和/或主机名前置到文件中 我试过: com.oracle.usagetracker.logToFile = ${user.home}/${user.name}.java_usagetracker 和其他一些变体,但无法正确掷骰子。似乎u

我正在尝试使用Java使用情况跟踪程序来审核Java使用情况。请参阅以下信息:

属性文件中的一个属性指定保存日志的位置(用户的主位置):

这将正确创建文件:C:\Users\CURRENTUSER\.java\u usagetracker

如何将当前用户的登录名和/或主机名前置到文件中

我试过:

com.oracle.usagetracker.logToFile = ${user.home}/${user.name}.java_usagetracker
和其他一些变体,但无法正确掷骰子。似乎user.name是有效的属性(请参见此处:)


仅供参考:我正试图将日志文件放在一个网络位置,该位置的路径中不包含用户名,这就是为什么我需要在文件名中包含用户名。

我相信您正在尝试替换属性文件中的内置环境变量值。您忘记的是,Java属性文件的编译方式与“.Java”文件不同。这些属性文件必须通过库读取

这里回答了一个类似的问题:

如果查看,您将看到它们只指定${user.home}将被展开。不允许提及其他属性:

您可以在路径名中指定${user.home}。该属性将扩展到用户的主目录。例如(忽略换行):

com.oracle.usagetracker.logToFile=${user.home}/.java\u usagetracker


所以${user.home}在别处定义并解析,但是${user.name}显然不是?对不起,我是Java不可知论者。
com.oracle.usagetracker.logToFile = ${user.home}/${user.name}.java_usagetracker