如何让Java应用将字体等文件存储到~/.java以外的路径?
如何让Java应用将字体等文件存储到~/.java以外的路径?
当然有办法啦!在GNU/Linux环境下,你可以通过环境变量或者启动参数来修改Java应用存储字体、外观配置等文件的路径,下面是两种实用的方式:
全局生效的环境变量设置
如果你想让所有Java应用都统一使用新路径,可以用_JAVA_OPTIONS这个环境变量。临时生效的话,直接在终端执行这条命令就行:export _JAVA_OPTIONS="-Duser.home=/path/to/your/custom/dir"要是想永久生效,就把上面的命令添加到你的shell配置文件里(比如
~/.bashrc、~/.zshrc,根据你日常用的shell来选),之后重启终端或者执行source ~/.bashrc就能让设置生效。这样Java会把原本存在~/.java的内容,自动放到你指定目录下的.java子目录里。针对单个Java应用单独设置
如果你只需要某个特定的Java应用使用新路径,不用改全局设置,启动这个应用的时候直接给JVM加参数就可以:java -Duser.home=/path/to/your/custom/dir -jar your-application.jar
补充说一句:目前Java没有专门的环境变量能直接指定.java目录的位置,但通过修改user.home系统属性是最通用的方案——毕竟Java的用户配置体系本身就是基于这个属性来定位~/.java目录的。
备注:内容来源于stack exchange,提问作者god
相关产品推荐
相关产品推荐

