工作中在linux上Maven打包代码遇到一些问题这里记录一下。
先说明一下情况:
我配合做代码检查的同事把我们的代码在他们的服务器可以正常的编译打包,第一次打包通过了但是由于代码没及时更新报语法错误原因是缺少一个方法。后来我就更新代码,然后重新打包这次问题就换了(只有两个项目报错,其他项目相同代码的地方都没错)。如下:
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 4.923s
[INFO] Finished at: Thu Nov 05 14:54:39 CST 2015
[INFO] Final Memory: 25M/981M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.3.2:compile (default-compile) on project aibi-si-ia: Compilation failure: Compilation failure:
[ERROR] /data01/usergrp/mvno/bdx/app/aibi-si-parent/aibi-si-ia/src/main/java/com/asiainfo/biapp/si/ia/beanpostprocessor/IaPropProcessor.java:[15,59] 类型 org.springframework.context.ApplicationListener 不带有参数
[ERROR] /data01/usergrp/mvno/bdx/app/aibi-si-parent/aibi-si-ia/src/main/java/com/asiainfo/biapp/si/ia/beanpostprocessor/IaPropProcessor.java:[26,4] 方法不会覆盖或实现超类型的方法
这个问题表面看是因为jdk的版本问题,大家都知道jdk6之后才完美的支持了@Override注解,一般在eclipse遇到这个问题就直接修改编译代码的级别为1.6就可以了。但是问题是我看系统的jdk是1.6的,和我们的环境基本一模一样,后来尝试修改maven的编译插件的jdk版本,问题依旧。
问题解决:
经过一段时间的折磨,我怀疑是这两个项目引用了旧版本的spring 的jar包,通过执行dependency:tree命令发现我本机环境和他们服务器的环境出现不同结果,本机dubbo没有依赖spring的2.5版本,但是他们服务器显示依赖了这个版本。然后我就在依赖dubbo的插件加上了排除spring的配置,然后再打包问题就解决了。这个问题在开发和测试环境都没遇到,但是在他们服务器就有这个问题了,我怀疑是我们的同事私自把本地仓库的插件配置改了,但是这个结论没有说服力。虽然问题解决了但是还是有点疑惑。请了解的大神帮忙解惑,不胜感激...
修改前(aibi-si-coc-service项目间接的依赖了dubbo):
<dependency>
<groupId>com.asiainfo.biapp</groupId>
<artifactId>aibi-si-coc-service</artifactId>
<version>${project.parent.version}</version>
</dependency>
修改后:
<dependency>
<groupId>com.asiainfo.biapp</groupId>
<artifactId>aibi-si-coc-service</artifactId>
<version>${project.parent.version}</version>
<exclusions>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring</artifactId>
</exclusion>
</exclusions>
</dependency>
分享到:
相关推荐
将maven工程部署到Linux系统(包括jdk,MySQL,Oracle,Redis,mq等软件在Linux上的安装)
Maven 3.8.5是这个系列的最新稳定版本,特别针对Linux操作系统进行了优化,提供了方便的一键解压功能,使得在Linux环境下配置和使用Maven变得轻而易举。 ### Maven的核心概念 1. **项目对象模型(Project Object ...
本压缩包"maven-linux-3.8.2.zip"提供了适用于Linux环境的Maven 3.8.2版本的安装文件,帮助开发者在Linux系统上建立和管理Java项目。 **Maven的核心概念** 1. **POM(Project Object Model)**: Maven项目对象模型...
在安装 Maven 之前,我们需要确保我们的实验环境已经配置好了 Linux 操作系统、Hadoop 2.6.0 或以上版本、Zookeeper 3.4.6 或以上版本、Storm 0.9.6 或以上版本和 JDK 1.6 或以上版本。 安装 Maven 的步骤包括解压...
Maven的安装过程相对简单,在Linux版本中可以通过以下步骤进行安装: 1. 下载Maven的安装包,例如apache-maven-3.3.9-bin.tar.gz 2. 解压安装包,例如tar -zxvf apache-maven-3.3.9-bin.tar.gz 3. 配置环境变量,...
在Linux环境下安装Maven对于Java开发者来说至关重要,因为Linux系统通常作为服务器平台运行Java应用程序。下面将详细介绍如何在Linux系统上安装和配置Maven。 1. **检查系统环境** 在开始安装之前,确保你的Linux...
在Linux环境中搭建Maven环境对于Java开发者来说是一项基本技能。Maven是Apache软件基金会支持的一个项目管理工具,它可以帮助开发者自动化构建过程,包括编译、测试、打包、部署等环节。本文将详细介绍在Linux环境下...
Linux环境下使用Maven编译RocketMQ 4.3.0版本是Java开发者在分布式消息队列领域中的常见操作。RocketMQ是由阿里巴巴开源的一款高性能、高可用、稳定且易用的消息中间件,广泛应用于大规模分布式系统中。在这个场景下...
本主题聚焦于“maven java 模板Linux环境 Java open-jdk17”,这涵盖了几个关键知识点,包括Java开发环境的搭建、Maven的使用以及在Linux系统中的运维。 1. **Java OpenJDK 17**: - **OpenJDK**是Java Development...
在Linux系统上安装Maven,可以让开发者在命令行环境下便捷地进行编译、测试、打包、部署等操作。下面我们将详细讲解如何在Linux上安装和配置Apache Maven 3.5.2。 首先,我们需要从官方网站下载Maven的安装包。在这...
本压缩包包含了Maven在Windows和Linux操作系统上的3.0.4和3.0.5两个版本。 Maven 3.0.4和3.0.5都是Apache Maven项目的重要里程碑,这两个版本主要关注稳定性和性能优化。Maven 3.x系列引入了许多改进,包括增强的...
在给定的资源中,我们看到的是Linux版本的Apache Maven 3.8.3的压缩包文件。这个版本是Maven的一个稳定版本,提供了许多改进和新特性,旨在提高开发效率和构建质量。 **Apache Maven简介** Apache Maven是一个基于...
这是我自己编译整理的,现在分享给大家,包含编译好的hadoop2.8.3、编译教程、jdk、下载好的maven仓库、编译使用的所有安装包和编译注意问题。 希望对大家有所帮助,ps:上传文件居然还有限制,每次只能120m,坑爹啊...
总之,Linux编译过的Hadoop 2.7.6是一个强大的大数据处理工具,其在Linux上的编译和部署过程需要一定的技术基础,但一旦设置好,就能在大规模数据处理场景中发挥出色性能。同时,这个版本也包含了一系列优化和改进,...
本教程将详细讲解如何在Linux环境下编译Hadoop源码,涉及的相关工具包括Java开发工具(JDK)、Apache Ant、Apache Maven以及Protocol Buffers。 首先,你需要一个Java运行环境来编译依赖Java的项目,如Hadoop。这里...
Maven 3.6.3是Maven的一个稳定版本,发布于2020年,它在前一个版本的基础上修复了一些已知问题,提高了性能和稳定性。该版本支持多种操作系统,包括Linux,Windows和macOS,且与Java 8及以上版本兼容。 在Linux环境...
hudi编译失败,不能通过maven自动下载的jar包,包括: pentaho-aggdesigner-algorithm-5.1.5-jhyde.jar, kafka-schema-registry-client-5.3.4.jar,kafka-avro-serializer-5.3.4.jar,common-utils-5.3.4.jar,common-...
为了方便寻找,于是乎我把编译的教程都收集来! part1:http://download.csdn.net/download/nidaye13123/10167490 part2:http://download.csdn.net/download/nidaye13123/10167494 part3:...
在Linux环境下搭建Maven是Java开发者进行项目构建和管理的重要步骤,特别是在处理像Hadoop这样的大型Java项目时,Maven的使用变得尤为关键。本文将详细介绍如何在Linux系统上安装和配置Maven,并探讨其与Java、...
2. **依赖管理**:Maven的中央仓库包含了大量开源Java库,通过在POM.xml中声明依赖,Maven会自动下载并管理这些库,避免了版本冲突问题。 3. **插件系统**:Maven拥有丰富的插件库,可以执行各种任务,如编译Java...