精华内容
下载资源
问答
  • 在pom加入maven-resources-plugin插件,和指定resources的位置。 1、在父类pom加入maven-resources-plugin插件 <plugins> <!-- 加载依赖模块的resources start --> <plugin> <...

    在pom中加入maven-resources-plugin插件,和指定resources的位置。

    1、在父类pom中加入maven-resources-plugin插件

     

    <plugins>
    	<!-- 加载依赖模块的resources start -->
    	<plugin>
    		<groupId>org.apache.maven.plugins</groupId>
    		<artifactId>maven-resources-plugin</artifactId>
    		<version>2.5</version>
    		<configuration>
    			<encoding>UTF-8</encoding>
    		</configuration>
    	</plugin>
    	<!-- 加载依赖模块的resources end -->
    </plugins>

     


    2、在要打成war包的项目pom中加指定resources位置

     

     

     

    <build>
    	<resources>
    		<resource>
    			<directory>src/main/resources</directory>
    			<filtering>true</filtering>
    		</resource>
    	</resources>
    </build>

     

     

     

    展开全文
  • 开发项目时会遇到这个问题:开发环境,测试环境,生产环境配置文件不同,打包时经常要手动更改配置文件,更改的少还可以接受,但是如果需要更多个配置文件,手动的方法就显得非常笨重了。 下面介绍一种方法,利用...

    开发项目时会遇到这个问题:开发环境,测试环境,生产环境的配置文件不同,打包时经常要手动更改配置文件,更改的少还可以接受,但是如果需要更多个配置文件,手动的方法就显得非常笨重了。

    下面介绍一种方法,利用Maven插件来打包不同环境的配置文件。我们用到的是maven-war-plugin这个插件。

    首先贴出整个pom文件:

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
      <modelVersion>4.0.0</modelVersion>
      <groupId>CMS</groupId>
      <artifactId>CMS</artifactId>
      <packaging>war</packaging>
      <version>0.0.1-SNAPSHOT</version>
      <name>Cms</name>
      <url>http://maven.apache.org</url>
      <properties>
        <spring.version>4.1.6.RELEASE</spring.version>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
      </properties>
      <dependencies>   
       <!-- 依赖省略-->
      </dependencies>
     <profiles>
        <profile>
          <!-- 本地开发环境 -->
          <id>dev</id>
          <properties>
            <package.environment>dev</package.environment>
          </properties>
          <activation>
            <activeByDefault>true</activeByDefault>
          </activation>
        </profile>
        <profile>
          <!-- 测试环境 -->
          <id>test</id>
          <properties>
            <package.environment>test</package.environment>
          </properties>
        </profile>
        <profile>
          <!-- 生产环境 -->
          <id>prod</id>
          <properties>
            <package.environment>prod</package.environment>
          </properties>
        </profile>
      </profiles>
      <build>
        <finalName>Cms</finalName>
        <sourceDirectory>src</sourceDirectory>
        <plugins>
          <plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.3</version>
            <configuration>
              <source>1.7</source>
              <target>1.7</target>
            </configuration>
          </plugin>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-war-plugin</artifactId>
            <version>2.1.1</version>
            <configuration>
              <webXml>WebRoot\WEB-INF\web.xml</webXml>
              <warSourceDirectory>WebRoot</warSourceDirectory>
              <archive>
                <addMavenDescriptor>false</addMavenDescriptor>
              </archive>
              <warName>Cms</warName>
              <webResources>
                <resource>
                  <directory>src/main/resoreces/${package.environment}</directory>
                  <targetPath>WEB-INF/classes</targetPath>
                  <filtering>true</filtering>
                </resource>
              </webResources>
            </configuration>
          </plugin>
        </plugins>
        <resources>
          <resource>
            <directory>src</directory>
            <filtering>true</filtering>
            <includes>
              <include>**/*.properties</include>
              <include>**/*.xml</include>
            </includes>
          </resource>
        </resources>
      </build>
    </project>

    简单说明几个地方:

    <profiles>
      <profile>
        <!-- 本地开发环境 -->
        <id>dev</id>
        <properties>
          <package.environment>dev</package.environment>
        </properties>
        <activation>
          <activeByDefault>true</activeByDefault>
        </activation>
      </profile>
      <profile>
        <!-- 测试环境 -->
        <id>test</id>
        <properties>
          <package.environment>test</package.environment>
        </properties>
      </profile>
      <profile>
        <!-- 生产环境 -->
        <id>prod</id>
        <properties>
          <package.environment>prod</package.environment>
        </properties>
      </profile>
    </profiles>

    此处借助profiles定义几个不同的环境文件夹,相同的需要在项目里面创建同id的文件夹,用来存放特定环境的配置文件。

    我之前的resource目录:

     

    我的目录结构是相对复杂的一种有2层目录,只有一层目录的也一样更简单。外层xml文件,还有一个properties文件夹。这里我针对不同环境需要更改的配置文件有4个,标红的。

     

    再看一下改造后resource的目录结构:

     

    随便展开一个dev文件夹是这样:

     

    可见需要更改的配置文件,需要copy到各个环境的文件夹当中去,而不需要更改的文件,则不需要复制一份。

    此处需要说明的是,如果我指定的是dev,则maven会将dev下的所有文件拿出来,db.xml覆盖掉外面的db.xml,dev.properties文件夹中的配置文件会拿出来放到外面的properties文件夹中。所以说这里是非常灵活的,你需要哪些文件定制,完全由自己来控制。

    再来看pom文件

    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-war-plugin</artifactId>
      <version>2.1.1</version>
      <configuration>
        <webXml>WebRoot\WEB-INF\web.xml</webXml>
        <warSourceDirectory>WebRoot</warSourceDirectory>
        <archive>
          <addMavenDescriptor>false</addMavenDescriptor>
        </archive>
        <warName>test</warName>
        <webResources>
          <resource>
            <directory>src/main/resources/${package.environment}</directory>
            <targetPath>WEB-INF/classes</targetPath>
            <filtering>true</filtering>
          </resource>
        </webResources>
      </configuration>
    </plugin>

    这里使用的是

    maven-war-plugin

    这个插件,此插件的功能是很强大的,想深入了解,可以到官网去看。

    ${package.environment}

    动态指定目录,接收参数。

    targetPath

    目标路径。

    另外说2点,这两个标签

    <webXml>WebRoot\WEB-INF\web.xml</webXml>
    <warSourceDirectory>WebRoot</warSourceDirectory>

    1.如果maven打包错误说找不到web.xml,说明你得项目结构不是标准的,用webxml标签指定一下就可以了

    2.如果jsp打包没有的话,同样的问题,指定一下目录,我的项目结构就不是maven标准结构,所以需要指定一下。

    改造完毕,接下来就是利用maven打包了。

    mvn clean ; mvn compile;

    mvn -P test package; 传相应环境参数就ok了

    展开全文
  • 在构件Maven项目时候,我们已经将配置文件放在包下,但是项目运行出错,报错找不到xxx.xml文件. 先来分析一下普通Maven项目的项目视图: 在src下有main和test两个目录,分别存放测试文件和打包发布的文件 以main目录...

    问题出现

    在构件Maven项目时候,我们已经将配置文件放在包下,但是项目运行出错,报错找不到xxx.xml文件.

    先来分析一下普通Maven项目的项目视图:
    这里写图片描述
    在src下有main和test两个目录,分别存放测试文件和打包发布的文件
    以main目录来举例, java———->存放java类文件啊
    resource—->存放配置文件
    一般程序中需要的配置文件,如果没有显示指定,则默认在相对src目录下查找,所以应该将配置文件放在resource文件夹下,如果非要放在其他文件夹下,则应该在pom.xml配置文件配置编译时查找所有目录下的配置文件,具体配置如下:

    解决问题

    在pom.xml文件下加入

     <build>
            <!--将其他目录的配置文件打包-->
            <resources>
                <resource>
                    <directory>src/main/java</directory>
                    <includes>
                        <include>**/*.properties</include>
                        <include>**/*.xml</include>
                    </includes>
                    <filtering>false</filtering>
                </resource>
            </resources>
        </build>
    展开全文
  • idea maven项目spring的配置文件找不到

    千次阅读 2019-06-24 16:14:50
    整合ssm项目时,为了区别,在resources目录下又分别建了几个目录来存放.xml配置文件。如图 结果在启动tomcat报错,找不到对应的路径 修改pom文件,添加 问题得到解决 ...

      整合ssm项目时,为了区别,在resources目录下又分别建了几个目录来存放.xml配置文件。如图

             

     结果在启动tomcat报错,找不到对应的路径

     修改pom文件,添加 问题得到解决

     

    展开全文
  • IntelliJ IDEA 自带Maven插件找不到settings.xml配置文件

    万次阅读 多人点赞 2020-02-21 20:04:28
    一、概述 Apache Maven 是一套软件工程管理和整合工具。基于工程对象模型(POM)的概念,通过一个中央...我们使用的开发工具 IDEA 也自带了 Maven 插件,但是问题来了(IntelliJ IDEA 自带Maven插件找不到settings...
  • maven项目启动的时候报错 Java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener错误 ...这些配置文件有点过分哎,有些junit根本就加载上,可以这样处理, 这
  • 标签添加对应的文件路径就行了 &lt;resource&gt; &lt;!--java文件的路径--&gt; &lt;directory&gt;src/main/java&lt;/directory&gt; &lt;includes&gt; &lt;...
  • 如果在新手在创建maven工程使用spring框架,运行时出现**.xml cannot be opened becaouse it dose not exist ,如下图所示: ...这个很简单啦,只要将spring的bean的配置文件xml放入resources的目录下即可。 ...
  • Springboot 或Maven项目启动 找不到配置类 application.properties 可能是因为 配置文件没有被编译到 /target/classse/目录下 用maven重新编译一下即可解决
  • 看报错好像是log4j2的配置文件找不到 不可能呀,上次还跑得好好的,文件也都在。 于是我进入web.xml看看: 怎么配置文件都报红了,网上了很久,用classpath*也没用,最后才知道: 是不是感觉不对劲? IDEA...
  • maven 模块打包 找不到符号

    千次阅读 2019-12-28 17:08:56
    今天,要对之前的一个老系统改造,在改造过程当中,遇到maven打包找不到符号,具体报的错误如下所示 说实话,解决这个错误花费了很长时间,所以特此记录下来,留着做警惕。 因为要改造的系统是一个一体化(没有分模块),...
  • java.io.IOException: Could not find resource SqlMapConfig.xml at org.apache.ibatis.io.Resources.getResourceAsStream(Resources.java:114) ...在maven项目的pom.xml,添加或修改为jar,即可解决
  • maven项目test执行main找不到资源文件

    千次阅读 2019-10-15 11:38:37
    在test下直接执行main方法会导致找不到资源文件,发现是Test output path下的目录没有资源文件,导致加载不到。 在pom.xml中配置增加以下配置后执行test目录下的main方法成功 <build> <test...
  • SpringBoot使用maven打包,加载不到配置文件原因   病情 使用idea工具,测试没有问题,使用maven可以打包,但是运行,错误。 通过反编译分析,原因就是打包后的文件,没有包配置文件输入,解决办法 &lt;...
  • 因为build由maven插件执行,所以此配置配在maven的pom.xml文件中; 其中&lt;directory&gt;中的路径写自己xml文件的所在位置,一般就写class路径;由于此处配置后就不会再扫描resources包下的xml和其他...
  • maven 环境变量的配置详解

    千次阅读 2021-02-25 20:01:04
    右键计算机→属性→高级系统设置→高级→环境变量,在系统变量中配置。2. 配置MAVEN_HOME。在系统变量新建,变量名MAVEN_HOME,变量值,maven文件夹路径,我的路径是F:\Wab\资料\maven\资料\apache-maven-3.2.3,...
  • 由于问题解决前忘记截图,...问题描述的意思就是父项目找不到子项目,子项目也找不到父项目 这个问题产生的原因可能是新建工程的时候直接复制了pom文件,而不是复制pom文件中的内容,仔细检查发现会有如下几个问题 如下e...
  • 主要原因:是MAVEN项目在IDEA中打包中会自动过滤掉XML等相关配置文件,从而导致出现运行服务器找不到配置文件。例如:Mybatis中的*Mapper.xml文件之类的。 解决办法,在**主**pom.xml文件中的project标签中添加...
  • 项目在Eclipse下可以完美的运行,可是放IDEA下,web.xml下却出现如下问题,但是不管他直接发布却也没问题然而在测试junit时,却...*.xml]网上了很多都能解决我的问题,怎么都是报这个错误,确认了路径无误...
  • 直接在pom.xml文件中加入下列对应的文件格式到<build>即可,如果其他后缀文件也是 读取不到,那么在<includes></includes>中新增<include>**/*.properties</include>即可。 <...
  • 问题描述 正常情况下,在idea new FileInputStream("src/main/resources/...会报错找不到资源文件 要取编译后的路径,而不是你看到的src/main/resources的路径。如下: URL url = MyTest.class.getClassLoader().
  • 今天项目一个maven的子模块怎么都跑不起来,提示某些xml配置文件和日志配置文件找不到,检查半天也没有地方出错,折腾半天发现是因为生成的target目录配置文件。 导致原因:我的资源目录是自己创建的起名为...
  • 错误样式:H:\workspace\myproject\target\classes\META-INF\MANIFEST.MF (系统找不到指定的路径。)  首先咱们打开pom.xml的配置文件光标的所在处进行回车,然后保存。 回车前: 回车后: 保...
  • 启动tomcat,一直报错说找不到另一个模块的一个spring配置文件。无论怎么 maven update都没用。必须要删除,重新从gitlab上拉下来才能行。然后过一段时间又不行了。又要重新拉。求各位大牛支招(其他同事基本上没...
  • 找到对应项目目录下的 项目名.iml文件删除,再进行调整
  • 有需求需要用jar包运行程序,但是在正常时候配置文件还可以找到,在jar包中则能找到后来发现原因,配置文件要放resources下 ,这样maven打包时才会把jar包打进去目录结构:导入配置文件代码:...
  • 最近很多童鞋问我Maven怎么安装,我才发现原来好多人都太会安装Maven,今天给大家写一个详细安装过程,按照这个顺序,肯定是木有问题,其实Maven安装起来非常简单,可以类比JDK安装过程。 第一步:下载 官网地址: ...
  • Maven的安装与环境变量配置

    千次阅读 2019-05-15 16:46:34
    Maven的安装与环境变量配置 最近在学习spring boot,因为用idea写比较方便而且(都是废话,所以此处省略N个字),所以需要安装Maven,对于从没有使用Maven这一工具的我,所以在这一系列过程遇到了不少的问题包括...
  • Idea基于maven创建springMvc项目中配置文件自动扫描的base-package必须是建在Sources root目录下的
  • 使用maven profile指定配置文件打包适用多环境

    万次阅读 多人点赞 2017-02-26 17:18:46
    开发过程, 我们习惯把数据源配置, 项目常量, 日志配置等基础数据配置写一个个单独的的文件中. 如jdbc.properties等各种.格式的文件. 如何频繁修改配置文件, 随时打包不同基础数据配置信息的项目. 1.新建maven...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 268,453
精华内容 107,381
关键字:

maven环境中找不到配置文件