如何在spring boot webapp中设置构建路径配置

时间:2017-07-04 07:25:08

标签: spring buildpath application.properties

我刚接触春季靴子。我使用spring boot创建了一个Web应用程序。我的应用程序需要一些属性文件来进行处理。在eclipse中我做了什么,我在Run configuration上设置路径,如下所述。

Bellow is the screen shot   现在,当我运行应用程序时,我在路径上获取require文件并顺利运行。 现在我想在某些服务器上部署war文件。我如何为我的应用程序提供此路径。

Bellow是我项目的项目结构。和文件在这里 突出 enter image description here

如何使用application.properties或任何其他方式设置此文件路径,以便我不必提供运行配置的路径,.war可以部署在任何服务器上。

更新1 :这就是我尝试过的。 创建了customStart.bat 文件的内容是

set CATALINA_OPTS="-engine.home="/src/main/resources/" -Dlog4j.configuration=config/log4j.xml -Dlog4j.debug=true"
call startup.bat %CATALINA_OPTS%

但仍然没有设定这个论点。我该怎么做?

2 个答案:

答案 0 :(得分:1)

从春季启动官方文档(这是创建自定义弹簧启动变量概念的一个亮点) bellow 您将找到指向Q /的链接描述解决方案的A.

  

Spring Boot jar附带了提供详细信息的元数据文件   所有支持的配置属性。这些文件旨在   允许IDE开发人员提供上下文帮助和“代码完成”   用户正在使用application.properties或application.yml   文件。

     

大部分元数据文件都是自动生成的   通过处理所有注释的项目来编译时间   @ConfigurationProperties。但是,可以编写部分内容   针对极端情况或更高级用例手动的元数据。

     

配置元数据文件位于jars下   META-INF / spring-configuration-metadata.json他们使用简单的JSON   格式与分类在“组”或“属性”下的项目   和其他值提示分类在"提示":

以下是元数据配置文件的示例:

{"groups": [
    {
        "name": "server",
        "type": "org.springframework.boot.autoconfigure.web.ServerProperties",
        "sourceType": "org.springframework.boot.autoconfigure.web.ServerProperties"
    },
    {
        "name": "spring.jpa.hibernate",
        "type": "org.springframework.boot.autoconfigure.orm.jpa.JpaProperties$Hibernate",
        "sourceType": "org.springframework.boot.autoconfigure.orm.jpa.JpaProperties",
        "sourceMethod": "getHibernate()"
    }
    ...
],"properties": [
    {
        "name": "server.port",
        "type": "java.lang.Integer",
        "sourceType": "org.springframework.boot.autoconfigure.web.ServerProperties"
    },
    {
          "name": "spring.jpa.hibernate.ddl-auto",
          "type": "java.lang.String",
          "description": "DDL mode. This is actually a shortcut for the \"hibernate.hbm2ddl.auto\" property.",
          "sourceType": "org.springframework.boot.autoconfigure.orm.jpa.JpaProperties$Hibernate"
    }
    ...
],"hints": [
    {
        "name": "spring.jpa.hibernate.ddl-auto",
        "values": [
            {
                "value": "none",
                "description": "Disable DDL handling."
            },
            {
                "value": "validate",
                "description": "Validate the schema, make no changes to the database."
            },
            {
                "value": "update",
                "description": "Update the schema if necessary."
            },
            {
                "value": "create",
                "description": "Create the schema and destroy previous data."
            },
            {
                "value": "create-drop",
                "description": "Create and then destroy the schema at the end of the session."
            }
        ]
    }
]}
  

每个“属性”是用户指定的配置项   给定的价值。例如,server.port和server.servlet-path可能是   在application.properties中指定如下:

     

server.port = 9090 server.servlet-path = / home“groups”更高   级别项目本身不指定值,而是提供   属性的上下文分组。例如server.port和   server.servlet-path属性是服务器组的一部分。

备注:

  • 论坛部分是必需的
  • “提示”是用于帮助用户配置给定属性的其他信息。配置spring.jpa.hibernate.ddl-auto属性时,工具可以使用它为none,validate,update,create和create-drop值提供一些自动完成帮助。
  

您可以轻松地从中生成自己的配置元数据文件   使用@ConfigurationProperties注释的项目   spring-boot-configuration-processor jar

您可以查看Q/A

**有关详细信息,请查看spring boot apendix section **

答案 1 :(得分:1)

作为选项,您可以将属性添加到%tomcat_home%\ conf \ catalina.properties

只需将它们放在文件的末尾,如下所示:

log4j.configuration =配置/的log4j.xml .....