如果您从收到权限被拒绝错误 java.io.File.createTempFile
,了解JVM参数 -Djava.io.tmpdir
是在java进程中设置的。 如果您没有找到 java.io.tmpdir
参数,然后授予用户对默认操作系统临时目录的访问权限。
环境
Adobe Experience Manager (AEM)(所有版本)
问题/症状
中出现错误 error.log
报告 java.io.IOException: Permission denied
栈栈跟踪具有 java.io.File.createTempFile
在里面。
01.06.2017 16:34:02.631 *ERROR* [ qtp1085110594-4453] org.apache.felix.http.jetty Exception while processing request to /system/console/configMgr/com.adobe.cq.experiencelog.impl.ExperienceLogConfigServlet (java.io.IOException: Permission denied)
java.io.IOException: Permission denied
at java.io.UnixFileSystem.createFileExclusively(Native Method)
at java.io.File.createTempFile(File.java:2024)
at org.apache.felix.cm.file.FilePersistenceManager._store(FilePersistenceManager.java:699)
at org.apache.felix.cm.file.FilePersistenceManager.store(FilePersistenceManager.java:660)
at org.apache.felix.cm.impl.CachingPersistenceManagerProxy.store(CachingPersistenceManagerProxy.java:242)
at org.apache.felix.cm.impl.ConfigurationImpl.storeNewConfiguration(ConfigurationImpl.java:462)
at org.apache.felix.cm.impl.ConfigurationImpl.<init>(ConfigurationImpl.java:183)
了解JVM参数是否 -Djava.io.tmpdir
是在java进程中设置的。
在Linux上:
运行此命令:
ps -ef | grep java
查看搜索的JVM参数 -Djava.io.tmpdir
在Windows、Linux或Unix上:
java.io.tmpdir
在页面上。java.io.tmpdir
到剪贴板中。java.io.tmpdir
参数,然后授予用户对默认操作系统临时目录的访问权限。
/tmp
默认情况下。C:\Users\aemuser\AppData\Local\Temp
)。原因
拥有 AEM Java 进程的用户没有适当的权限来写入 Java 进程的临时目录。