精华内容
下载资源
问答
  • 热门系列: 程序人生,精彩抢先看 ...也就是说,问题出maven打包的配置文件不对,导致启动报错 下面看下配置文件打包后的对比图: 打包之后,正确的配置文件路径应该如图一所示!将指定环.

    热门系列:


    1.问题

    前些天,部门负责人重建项目仓库,博主将原来的项目重新检出!之后就直接开发需求了,没有出现什么问题。后来,开始自测代码时,发现项目启动不了。直接报了{\color{DarkRed} \mathbf{logback.xml}}这个文件找不到了!!!

    接着先查看了一下项目文件是否有存在,再看了一下{\color{DarkRed} \mathbf{target}}包下面的文件,发现文件是有的,但是没有按照配置打包对应环境的配置文件。。。

    也就是说,问题出在:maven打包的配置文件不对,导致启动报错

    下面看下配置文件打包后的对比图:

    打包之后,正确的配置文件路径应该如图一所示!将指定环境env的配置文件,打包到classes目录下,而不是打包所有环境的配置文件!!!


    2.分析

    ①一开始以为是因为项目重建仓库,冲捡之后,导致某些配置文件出错,导致打包出现问题!!

    排除方式:后来和旁边的同事确认,他们是可以正常启动的,所以排除此种可能。

    ②Idea种的maven配置问题,导致打包错误

    排除方式:重新配置maven的环境变量、重新设置idea的maven配置、重启IDEA后,都尝试无果,此种可能也几乎排除!

    ③maven本地仓库原因(为什么这么说,请先看下图)

    看截图中的提示,{\color{DarkRed} \textsc{Configure Maven home}},maven环境变量已经配置成功了,所以我删除了本地maven库,重新下载了一次,但是也没能解决!所以,此可能性,也排除!

    ④pom.xml文件的配置错误

    一般我们打包的文件,主要就是通过pom.xml文件中的一下配置:

    <build>
        <resources>
            <resource>
                <directory>src/main/resources</directory>
                <includes>
                    <include>application.yml</include>
                </includes>
                <filtering>true</filtering>
            </resource>
        </resources>
    </build>
    

    但是,身边同事也没有改过此类配置文件,所以,既然他可以启动,那说明跟配置文件没有关系!问题应该出在,我自己的IDEA和Maven上。

    ⑤重新检查IDEA中的maven配置

    我的Maven配置如图:

    但是,配置对照了一些帖子,基本没有什么不同!只有调整了上图中的红色方框标注的选项,如果选择第一个选项 {\color{DarkRed} \textsc{Dont't detect}} ,重新build项目,打包文件会改变!虽然,环境配置文件出现在了classes目录下,但是另外一个config目录中的文件却不见了。再对照几个帖子中的配置,这里的选项应该是第二选项(截图中这个),所以配置问题导致,也基本排除!


    3.解决

    上面那些分析和尝试之后,仍然没能解决!此时,我想一般人应该也会有一点抓狂了吧!但是,崩溃和懊恼是解决不了问题的。所以,仍然赖着性子,冷静思考问题可能出在哪里?

    最终我将可能性放在了,上面第④条分析的配置文件上了,因为这里是最直接影响打包文件的配置。我看到配置中的这个设置:

    <filtering>true</filtering>

    这个作用是用来:打包时能替换文件名,也能替换文件里面的标识符。而我们的配置中正好,正好也有用到

    <resource>
        <directory>src/main/resources/env/${env}</directory>
        <includes>
            <include>*.*</include>
            <include>**/*.xml</include>
            <include>**/*.properties</include>
        </includes>
        <filtering>true</filtering>
    </resource>

    所以,考虑是不是这个 ${env} 没取到值,所以导致打包失败!于是,我尝试把 <filtering>改成了:

    <filtering>false</filtering>

    重试build项目,成功啦!!!但是,再重新设置回来为 true ,也是可以打包成功的!

    是不是感觉有点莫名其妙?到头来,等于什么都没改动,又可以了!!!!但是,我个人分析,应该是IDEA或Maven在加载pom里的配置时,并没有全量重新加载,亦或是有缓存机制所导致。。那么变动一下,重新设置,则会刷新原来的缓存之类的旧配置内容了,因此才可以正常加载了!!!

    以上为个人实践结论,若有不对,或是有知道具体原因的朋友,欢迎博文下方留言,探讨~~~

    在这里插入图片描述

    展开全文
  • 正常的maven项目java目录都是蓝色的,但是有几个项目就没有颜色,之前考虑到是不是手动把Mark Directory as Root目录就可以了呢,但是我这有多个项目,能一个个去设置吧,考虑到肯定不是这的问题,,之前是好的。...

    最近遇到几次这个问题了,上次解决了一次,最近又出现这种情况忘记怎么解决了,捣鼓了半天,总算是解决了,记录一下。
    问题:
    在这里插入图片描述
    正常的maven项目java目录都是蓝色的,但是有几个项目就没有颜色,之前考虑到是不是手动把Mark Directory as Root目录就可以了呢,但是我这有多个项目,不能一个个去设置吧,考虑到肯定不是这的问题,,之前是好的。
    在网上找了半天,终于找到了解决办法
    第一步:
    在这里插入图片描述
    第二步:找到对应的项目-右侧那里点击叉号全部删除
    在这里插入图片描述
    第三步:Add Content Root,选择对应的项目,点击确认,保存之后maven重新引入一下就好了。
    在这里插入图片描述
    完成之后点击项目-右键-maven-reimport即可。

    展开全文
  • 1.在idea 执行 mvn clean compile packge project1,project2 … 2.发现 target io 异常 按正常说 clean 后 target该存在了 打开项目所在目录,发现target 3.刚开始手动删除,发现能删,就看提示,理所当然...

    1.在idea 中执行 mvn clean compile packge project1,project2 …

    2.发现 target io 异常

    按正常说 clean 后 target 就不该存在了
    打开项目所在目录,发现target
    在这里插入图片描述

    3.刚开始手动删除,发现不能删,就看提示,理所当然认为时权限问题

    在这里插入图片描述
    编辑权限,发现根本不是网上说的那样。

    4.后来发现自己还打开了 xshell 的文件传送窗孔把他关闭

    在这里插入图片描述

    5.关闭后打开idea再次执行 mvn clean compile packge project1,project2 … 就没有io 异常

    展开全文
  • 前言 1、建立一个模板项目 按照如下目录生成 2、根据模板项目生成archetype 进入到项目根目录下 控制台窗口执行如下命令 mvn archetype:create-from-project ...之后进入到target中的archetype下

    前言

    1、建立一个模板项目

    按照如下目录生成

    在这里插入图片描述

    2、根据模板项目生成archetype

    进入到项目根目录下

    在这里插入图片描述

    在控制台窗口中执行如下命令

    mvn archetype:create-from-project 
    

    出现如下提示,表示生成archetype成功

    在这里插入图片描述

    这个时候也会在这个目录下多处一个target目录,其中就有archetype的相关信息

    在这里插入图片描述

    3、将archetype安装到仓库

    这一步我这里只安装到本地,如果安装到自动的私服,需要有相关插件支持,这里不做总结

    之后进入到target中的archetype下

    cd target/generated-sources/archetype/
    

    执行install命令,安装到本地maven仓库

    mvn install
    

    这个会将该archetype的信息加入到本地仓库的archetype-catalog.xml文件中

    mvn archetype:crawl
    

    4、idea中加入指定archetype

    最好以archetype-catalog.xml文件中的相关信息为准

    贴一个生成的archetype-catalog.xml文件,其中的第一个archetype就是我们本地生成的archetype

    <?xml version="1.0" encoding="UTF-8"?>
    <archetype-catalog xsi:schemaLocation="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-catalog/1.0.0 http://maven.apache.org/xsd/archetype-catalog-1.0.0.xsd"
        xmlns="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-catalog/1.0.0"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
      <archetypes>
        <archetype>
          <groupId>com.learn</groupId>
          <artifactId>common-learn-archetype</artifactId>
          <version>1.0-SNAPSHOT</version>
          <description>common-learn-archetype</description>
        </archetype>
        <archetype>
          <groupId>org.apache.maven.archetypes</groupId>
          <artifactId>maven-archetype-quickstart</artifactId>
          <version>1.0</version>
          <description>quickstart</description>
        </archetype>
        <archetype>
          <groupId>org.apache.maven.archetypes</groupId>
          <artifactId>maven-archetype-quickstart</artifactId>
          <version>1.4</version>
          <description>quickstart</description>
        </archetype>
        <archetype>
          <groupId>org.apache.maven.archetypes</groupId>
          <artifactId>maven-archetype-webapp</artifactId>
          <version>1.3</version>
          <description>webapp</description>
        </archetype>
      </archetypes>
    </archetype-catalog>
    

    在idea中输入如下信息即可

    在这里插入图片描述

    5、根据自己建立的archetype新建项目

    在建立项目的时候,选中指定的archetype即可。

    在这里插入图片描述

    输入相关项目的groupId和artifcatId之后,建立的项目结构如下所示,与archetype一致。

    在这里插入图片描述

    总结

    一个maven中archetype简单使用的总结

    展开全文
  • 在idea中spring boot打成jar包,安装到 Maven 本地仓库 本人写的可能比较复杂,也有更简便的方法进行保存到maven本地仓库,下面是我自己第一次想到的操作 具体步骤如下 首先第一步: 将我们准备好的springboot项目,...
  • 首先按照如下步骤快速创建基于maven的web项目 等待项目创建完成、发现项目...对于web项目 maven约定的目录结构还有一个 target 目录(和src同级 —— 作用:目标文件输出位置例如.class、.jar、.war文件 如果targe
  • Java小白提问,为什么我的IDEA中Maven设置必须勾选Runner下的Delegate IDE build/run actions to Maven才能运行?不然就会报错程序包xxx存在。我确保jar包都是已经下载到本地仓库中的,源码也能打开,但是编译就...
  • 2.在IDEA使用Maven出现了Error: java 支持发行版本5 或 Error:java: 不再支持源选项 5,请使用 6 或更高版本的解决办法 (1)点击setting,在搜索框输入Java Compiler,里面的target bytecode version和project ...
  • 1.首先你启动tomcat服务器后,如果发现你要的jsp出现404,那么极大的可能就是你都jsp页面在target中没有生成相应的classes文件。(我就是这个原因) 如,现在我我的maven的web项目创建一个bb...
  • idea中maven的web项目依赖的项目被打包成了.jar文件夹 出现的问题: idea中maven管理的web项目,通过idea编译和打包,会将其他模块的项目打包成.jar文件夹,而不是jar包。 1、编译到target的结果: 2、Project ...
  • /maven.compiler.target> <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion> </properties> </profile> </profiles> </...
  • 如果要到服务器部署项目 需要将项目打成war包 放到tomcat的webapps下 下面介绍如何用Maven将项目打成war...三、命令执行完后 war包会出现在target目录下 四、把war包传到服务器的tomcat的webapps目录下 重启服务器...
  • 今天学习,运行时出现报错:支持发行版本5 ...3.继续运行maven项目,出现报错:支持发行版本13,说明JDK版本可能被maven项目的配置覆盖了,这时我们需要刚刚的pom.xml文件指定编译的版本: o...
  • 使用idea删除target文件夹,再次打算手动删除target文件夹。双击文件夹提示无权限打开,直接删除呢,提示需要管理员权限。 多次重启机器尝试后本人猜测是某个进程占用了这个文件夹的某个文件。于是乎打开任务...
  • ibatis.binding.BindingException: Invalid bound statement (not found) ...在Idea中包下的xml配置文件在编译生成时不会自动复制到target中,运行时找到配置文件自然无法绑定接口,所以抛出异常!
  • 情况:Tomat Deployment 没有Artifact选择,这个时候能Run,能编译,如下图。 ...1、先在maven project里点击package生成target文件夹,而.war文件在target文件夹。 2、File的Project ...
  • 结果集映射: 解决表的列和对象属性匹配的问题. 缓存配置 <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ...
  • 使用Debug启动Maven项目,出现该问题,然后到百度查找该问题有说IDEAMaven版本匹配,还有就是清除所有断点 Flie -->Invalidate Caches/Restart,其实和这些没什么关系。 仔细看上面很明显这里不是显示启动信息...
  • maven 打install命令时总是出现编译错误,但是idea中是没有编译错误,很奇怪的问题,之前网上有社区的说是因为maven2与maven3的版本问题,后面发现不是这个原因,不管我用maven2还是maven3都出一这个问题,求高手...
  • 对类进行模块之间迁移的过程中出现报错无法找到XXX路径下的XXX类 可是命名idea 代码界面能导入目标类,为啥还会报错哦! 于是我想到了清除targetmaven clean了target还是不行 分析 既然不是idea运行target...
  • bug出现的过程是这样的: 我创建一个普通的Maven工程后打算把它以war包的形式发布到网上, 于是使用idea直接生成web.xml文件. 运行Tomcat的时候没有报任何错误, 但是就卡Starting ProtocolHandler [...
  • 然后在target目录下面就可以看到.war结尾的打包好的项目了 里面就包含了项目的依赖包、字节码、配置文件等等 war包也是一个压缩包,可以解压的 如果有数据库的话,注意数据库配置的端口号,部署到外置的Tomcat...
  • 3、打开Maven Project,然后Lifecycle,依次点击clean清空旧的target,再点击compile重新编译最新的代码,最后点击package打包代码。看到日志打包完成后就会上面Output directory指定目录下找到打包好的war包了...
  • 最近使用IDEA的时候,突然出现过找到包或者找到符号的情况,确定了自己引用存在的情况下,可以尝试以下几种方式来解决,以下是开发过程碰过问题同样解决过的几种办法,此记录下也分享给大家,希望对...
  • Mybatis第一个程序出现"1 字节的 UTF-8 序列的字节 1 无效"异常怎么办(idea版) 先讲一下原理这个异常时...2,将idea的源文件默认字符编码集改成utf-8,然后重新编译在maven项目直接清除target目录重新编译生成 现在
  • IDEA配置tomcat deployment

    万次阅读 2019-01-20 18:28:12
    1、先在maven project里点击package生成target文件夹,而.war文件在target文件夹。 2、File的Project Structure选择生成的.war文件 3、完成Tomcat配置 详细步骤如下: 将鼠标移到Idea左下角, 这个时候出现一个...
  • 相关文件夹下也有该文件,一般出现这问题,建议去target目录下,找相应的文件是否存在,一般是存在的,因为MAVEN没有将其一起打包进target目录,所以可以POM文件加入下面配置(build节点的内容往后放,尽量与...
  • idea提示jdk1.5错误

    2020-09-03 15:10:28
    如果使用了maven,有时候就会出现这种错误,而且几率小。 官方推荐的做法是 pom.xml加入如下语句 <properties> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler....
  • 第一种方法:在idea maven项目,效果理想.在common,service,api三个maven项目,api依赖service,service依赖common.每个项目的pom文件都配置了这种方式.但是api在idea tomcat部署,发现出现以下问题(知道如何...

空空如也

空空如也

1 2 3
收藏数 44
精华内容 17
关键字:

maven在idea中不出现target