我们在Windows笔记本电脑上开发应用程序/序列,但ESB服务器是基于Linux的。如果我们必须处理文件,我们将它们存储在一个临时位置。Windows和Linux有不同的文件系统,使用硬编码的位置在一个平台上有效,而在另一个平台上无效。
如何创建和使用一种TempLocation环境变量,注册表项或其他我们可以使用,但在部署或服务器重启后不会改变或导致应用程序之间的冲突。
问候,保罗
我不知道您存储文件的目的是什么?但我觉得你们可以用碳。您可以在Linux和Windows ESB主目录下创建"tempFiles"文件夹。然后用CarbonUtils
把碳带回家。
String carbonhome = org.wso2.carbon.utils.CarbonUtils.getCarbonHome();
您可能需要使用File.separator
来附加文件夹路径。
String tempPath = carbonhome + File.separator +"tempFiles";
然后使用Java IO将文件存储在此文件夹中。但是您可能需要对这个文件夹进行适当的访问。
如果你需要Maven对CarbonUtils
的依赖
<dependency>
<groupId>org.wso2.carbon</groupId>
<artifactId>org.wso2.carbon.utils</artifactId>
<version>4.2.0</version>
</dependency>