如何使用Maven(Build Jar)将文件.properties添加到Spring Boot?

时间:2019-07-10 13:21:52

标签: java spring spring-boot

我正在使用Spring Boot开发一个Web应用程序,我使用Maven构建了该项目。 在项目中,我使用.properties文件,并给出了项目的路径,如下所示:

Properties FileProperties = FileUtils.getProperties("src\main\resources\file.properties");

使用IntelliJ运行项目,一切正常。 但是此刻,我在Jar中使用maven进行了构建,并且打开了Web应用程序,找不到文件属性并给出了NullPointerException。 这是我的pom.xml

 <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.6.RELEASE</version>
    </parent>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-freemarker</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
        </dependency>

        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
            <version>2.9.9</version>
        </dependency>

        <dependency>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
            <version>2.6</version>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

这是项目图。 https://m.imgur.com/gallery/zZzTzID

非常感谢

我尝试了这个,但是没有用。

ConfigProperties.java
package bperTube.transfer.Utils;


import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.PropertySource;

@Configuration
@PropertySource("classpath:file.properties")
@ConfigurationProperties(prefix = "upload")
public class ConfigProperties {

    private String dateFormat;
    private String directoryPath;
    private String videoDirectory;
    private String imageDirectory;

    public  String getDateFormat() {
        return dateFormat;
    }

    public  void setDateFormat(String dateFormat) {
        this.dateFormat = dateFormat;
    }

    public  String getDirectoryPath() {
        return directoryPath;
    }

    public  void setDirectoryPath(String directoryPath) {
        this.directoryPath = directoryPath;
    }

    public  String getVideoDirectory() {
        return videoDirectory;
    }

    public  void setVideoDirectory(String videoDirectory) {
        this.videoDirectory = videoDirectory;
    }

    public  String getImageDirectory() {
        return imageDirectory;
    }

    public void setImageDirectory(String imageDirectory) {
        this.imageDirectory = imageDirectory;
    }
}

file.properties

upload.dateFormat=dd-MM-yyyy
upload.directoryPath=/test/
upload.videoDirectory=swf/
upload.imageDirectory=poster/

0 个答案:

没有答案