ily*_*lya 11 tomcat tmp spring-boot
我正在使用嵌入式tomcat的Spring Boot,一切正常,我突然得到了错误:
Caused by: org.springframework.boot.context.embedded.EmbeddedServletContainerException: Unable to create tempDir. java.io.tmpdir is set to C:\Windows\
at org.springframework.boot.context.embedded.AbstractEmbeddedServletContainerFactory.createTempDir(AbstractEmbeddedServletContainerFactory.java:183)
at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainerFactory.getEmbeddedServletContainer(TomcatEmbeddedServletContainerFactory.java:165)
at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.createEmbeddedServletContainer(EmbeddedWebApplicationContext.java:164)
at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.onRefresh(EmbeddedWebApplicationContext.java:134)
... 11 common frames omitted
Caused by: java.io.IOException: Access is denied
at java.io.WinNTFileSystem.createFileExclusively(Native Method)
at java.io.File.createTempFile(File.java:2024)
at java.io.File.createTempFile(File.java:2070)
at org.springframework.boot.context.embedded.AbstractEmbeddedServletContainerFactory.createTempDir(AbstractEmbeddedServletContainerFactory.java:174)
... 14 common frames omitted
Run Code Online (Sandbox Code Playgroud)
我没有对用户或系统变量进行任何操作.
我的TEMP 用户变量正在查看C:/ Users/me/AppData/Local/Temp,我猜tomcat必须使用系统1的这个值,实际上是C:/ Windows/Temp
在 Windows 上GetTempPathA用于定位临时目录。算法:
1. The path specified by the TMP environment variable.
2. The path specified by the TEMP environment variable.
3. The path specified by the USERPROFILE environment variable.
4. The Windows directory.
Run Code Online (Sandbox Code Playgroud)
因此,如果您的应用程序在没有TMP& TEMP&USERPROFILE定义的情况下启动,您将得到java.io.tmpdir== GetWindowsDirectoryA。
通常应用程序设置java.io.tmpdir在app-run.bat(via -D...=...) 或app.properties.
我遇到了这个问题,因为Test如果environment属性没有被传递而是被替换,Gradle任务不会传递环境变量:
test {
environment = ["A": "1", "B": "2"] // won't work, because it replaces envs
}
test {
environment( ["A": "1", "B": "2"] ) // will work, because it appends to existing envs
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6197 次 |
| 最近记录: |