我有一个Spring Boot Maven多模块项目,在该项目中,我try 在我的代码中使用Files.createDirecters方法创建一个目录.该项目的 struct 如下:

-GlobalProject :                                                                                                                                                                                                      
    CommonProject:                                                                                                                                                                                       
    WebParentPrject:
         backendPorject:                                                                                                                                                   
         frontendProoject: 

我想要在backendPorject目录中创建一个名为USER-IMAGE的目录.以下代码(在Backendproject中)在Eclipse中运行良好,但在IntelliJ中的行为不符合预期:

public class FileUploadUtil {

    public static void saveFile(String uploadDir, String fileName, MultipartFile multipartFile) throws IOException {
        Path uploadPath = Paths.get(uploadDir);
        if(!Files.exists(uploadPath))
        {
            Path directories = Files.createDirectories(uploadPath);
            System.out.println(directories);
        }
        try (InputStream inputStream = multipartFile.getInputStream()){
            Path filePath = uploadPath.resolve(fileName);
            Files.copy(inputStream,filePath, StandardCopyOption.REPLACE_EXISTING);
        }catch (IOException exception){
            throw new IOException("Could not save file : "+fileName,exception);
        }
    }

在Eclipse中,该目录是在BackendProject目录中创建的,但在IntelliJ中,该目录是在整个项目(MyProject)的根目录中创建的.我希望在两个IDE的BackendProject目录中创建该目录.

有没有人能帮我解释一下为什么在Eclipse和IntelliJ中行为不同,以及我如何修改代码以确保在两种IDE中的行为一致?

推荐答案

文件操作相对于当前工作目录工作,您可以在IntelliJ IDEA运行配置中设置该目录.

Spring Boot示例:

Boot working directory

Java相关问答推荐

JPackage-results已安装-如何添加系统属性?

将Nimbus设置为计算机上运行的所有Java应用程序的默认外观

Java 22模式匹配不适用于记录模式匹配.给出汇编问题

更新我们的一个文物后出现了严重的符号引用错误

如何使用解析器组合子解析Java数组类型签名?

如果一个子类没有构造函数,超类也没有构造函数,那么为什么我可以构造子类的实例呢?

需要一个找不到的jakarta.sistence.EntityManager类型的Bean

SpringBootreact 式Web应用程序的Spring Cloud Configer服务器中的资源控制器损坏

Java 21 struct 化连接货币,需要可预知的子任务异常排序

Log4j与jdk21兼容吗?

Sack()步骤中的合并运算符未按预期工作

如何在构建Gradle项目时排除com.google.guava依赖项的一个变体

在Oracle JDBC连接中,连接失效和身份验证失效是什么意思?

Spring Framework6.1中引入的新RestClient是否有适合于测试的变体,就像RestTemplate和TestRestTemplate一样?

除0错误/抱歉我的句子是PT

为什么使用lo索引来解决二进制搜索问题不同于使用hi索引?

为什么Spring要更改Java版本配置以及如何正确设置?

在JSON上获取反斜杠

ExecutorService:如果我向Executor提交了太多任务,会发生什么?

在JPanel上使用GridBagLayout并将JButton放在里面时出现问题