Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/318.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 当我在构建时使用概要文件填充属性文件时,如何在Eclipse中运行Maven webapp?_Java_Eclipse_Maven 2 - Fatal编程技术网

Java 当我在构建时使用概要文件填充属性文件时,如何在Eclipse中运行Maven webapp?

Java 当我在构建时使用概要文件填充属性文件时,如何在Eclipse中运行Maven webapp?,java,eclipse,maven-2,Java,Eclipse,Maven 2,以下是我的POM中的示例配置文件: <profiles> <profile> <id>QA</id> <activation> <activeByDefault>true</activeByDefault> </activation> <properties> &

以下是我的POM中的示例配置文件:

    <profiles>
    <profile>
        <id>QA</id>
        <activation>
            <activeByDefault>true</activeByDefault>
        </activation>
        <properties>
            <jdbc.url>jdbc:mysql://127.0.0.1:3306/SomeDB</jdbc.url>
            <jdbc.username>webapp</jdbc.username>
            <jdbc.password>somepassword</jdbc.password>
        </properties>
    </profile>
    ...
    <build>
    <resources>
        <resource>
            <directory>src/main/resources</directory>
            <filtering>true</filtering>
        </resource>
    </resources>
    ...
最后,我在POM中打开过滤:

    <profiles>
    <profile>
        <id>QA</id>
        <activation>
            <activeByDefault>true</activeByDefault>
        </activation>
        <properties>
            <jdbc.url>jdbc:mysql://127.0.0.1:3306/SomeDB</jdbc.url>
            <jdbc.username>webapp</jdbc.username>
            <jdbc.password>somepassword</jdbc.password>
        </properties>
    </profile>
    ...
    <build>
    <resources>
        <resource>
            <directory>src/main/resources</directory>
            <filtering>true</filtering>
        </resource>
    </resources>
    ...

src/main/resources
真的
...
这实际上是一个简化的例子,但你明白了。基本上当我跑步的时候

mvn安装-p QA

Maven将过滤my app.properties文件,用概要文件中的值替换所有占位符,并部署填充的属性文件

所有这些的问题是,我喜欢在Eclipse中使用服务器机制,在Eclipse中,我让Tomcat在IDE中运行。我的项目在这个实例中运行,Eclipse负责更新、重新部署等。但是,在IDE中部署期间,Maven被排除在外,并且这个属性文件永远不会正确填充


那么,如何在IDE中继续运行我的项目,同时正确填充此属性文件呢?

您可以通过插件有效地运行任何Maven命令(包括具有概要文件的命令)。此外,m2eclipse与WTP一起工作(我相信这就是Servers选项卡的来源)。这方面我不确定,但我已经用它在Eclipse中为Maven项目将web应用部署到Tomcat上。

谢谢Alex。我最后安装了

这个插件解决了两个问题:在Eclipse中发布到服务器事件期间填充属性文件和填充WEB-INF/lib文件夹。以前,即使我运行mvn eclipse:eclipse来满足我在eclipse中的构建路径,它也没有将这些依赖关系正确地发布到嵌入式服务器。这个插件可以做到这一点。解决了这两个问题后,我认为在Eclipse中使用嵌入式服务器开发Maven项目没有任何其他障碍