java,maven项目里,想要写入数据到文件,可以使用

String filePath = ResourceUtils.getFile("classpath:resources/dirName") + File.separator + fileName;

获取到文件路径,然后写入即可。

java程序本地读取文件和服务器读取文件的流程:

1.本地启动,会从生成的target/classes目录里寻找resources/dirName目录

image.png

2.服务器启动,会从jar包内寻找resources/dirName目录,没有找到,会到jar包同级目录寻找resources/dirName目录

image.png

遇到的问题:

1.maven配置了资源文件拷贝,如下所示.但是目录没有被拷贝,导致程序报找不到文件错误。确保目录下有文件,空文件夹不会被拷贝。

<plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-resources-plugin</artifactId>
                <version>3.2.0</version>
                <executions>
                    <execution>
                        <id>copy-resources</id>
                        <phase>package</phase>
                        <goals>
                            <goal>copy-resources</goal>
                        </goals>
                        <configuration>
                            <resources>
                                <resource>
                                    <directory>src/main/resources</directory>
                                </resource>
                            </resources>
                            <outputDirectory>${project.build.directory}/resources</outputDirectory>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

点墨
26 声望3 粉丝

全栈前端开发工程师