`
houzhaowei
  • 浏览: 498008 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

maven 私服(nexus)架设以及项目管理中遇到的问题及解决方案(updating)

阅读更多

---    用maven 的过程中 大问题小问题实在是不少 ,就不一篇文章一篇文章的写了,干脆写在一起 ----

-------  nexus 加索引

 点击Administration菜单下面的Repositories,将这三个仓库Apache Snapshots,Codehaus Snapshots,Maven Central的configuration下的remote repository access 下的 Download Remote Indexes修改为true。然后在这三个仓库上分别右键,选择Re-index,这样Nexus就会去下载远程的索引文件。 

(这里注意:reindex后,nexus只会把索引下载下来,而不是jar本身。只有当你运行项目时,才会真正根据索引下载相应的jar并放在 C:\Documents and Settings\localUser\sonatype-work\nexus\storage\ 下面。--当然同时,这些jar 也会下载到本地机器的.m2 工作仓库下。)

------- maven 生成eclipse 项目时报的错

[INFO] Resource directory's path matches an existing source directory. Resources
will be merged with the source directory src/main/resources
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD ERROR

 可能会产生以上错误  在pom 文件中巴maven-eclipse-plugin 这样引入:

<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-eclipse-plugin</artifactId>
				<version>2.6</version>
				<configuration>
					<wtpmanifest>true</wtpmanifest>
					<wtpapplicationxml>true</wtpapplicationxml>
					<wtpversion>2.0</wtpversion>
				</configuration>
			</plugin>

 搞定。  (之前的问题是由于plugin 的版本引起的 改成2.6 就行了。)

-------   maven 部署到weblogic 上时可能出现内存溢出

[INFO] Java heap space
[INFO] ------------------------------------------------------------------------
[INFO] Trace
java.lang.OutOfMemoryError: Java heap space

 解决方案:在环境变量设置 MAVEN_OPTS=-Xms128m -Xmx512m     ---- 啊? 还有错么? 那就是机器内存不够啦 重启一下吧.....

----------   maven weblogic 插件的所有操作

http://maven-plugins.sourceforge.net/maven-weblogic-plugin/goals.html

 

----------    关于M2_REPO

这个问题还纠结了一阵子,记得以前配置的时候在eclipse中加M2_REPO变量后就能把仓库的jar加到eclipse中,但突然不好使了,后来不得不靠m2eclipse插件帮忙。 今天突然开窍.. 没在机器环境变量里配M2_REPO变量.....配置上后问题得以解决(卸载掉m2eclipse..)

 

----------    maven 解决嵌套依赖产生的冲突

比如说:jbpm 的依赖里面又做了对hibernate 的依赖 其pom里面引入了hibernate-core 等hibernate 的包,而项目又不能因为用jbpm对hibernate 的引入而删除本身项目对hibernate 的引入,因此为了避免重复引入造成的冲突,只能把jbpm对hibernate 的引入删去,这里只需要对pom 进行一个exclusion 就行了! 首先打开相应目录下的jbpm 的pom 看看其对hibernate 引入的groupId 和 artifactId 然后再在相应的jar 上面移除这两个依赖 写法如下:

<dependency>
			<groupId>org.jbpm.jbpm4</groupId>
			<artifactId>jbpm-pvm</artifactId>
			<version>4.3</version>
			<exclusions>
				<exclusion>
					<groupId>org.hibernate</groupId>
					<artifactId>hibernate-core</artifactId>
				</exclusion>
				<exclusion>
					<groupId>javassist</groupId>
					<artifactId>javassist</artifactId>
				</exclusion>
			</exclusions>
		</dependency>

 

这样  移除了jbpm 下对hibernate 和javassist 的依赖  为了避免冲突。

 

----------    修改nexus工作目录

参照:http://marshal.easymorse.com/archives/1195

 

----------    用maven打包 maven war   (mvn war:war) 插件。

<plugin>
			<groupId>org.apache.maven.plugins</groupId>
			<artifactId>maven-war-plugin</artifactId>
			<version>2.1-alpha-1</version>
			<configuration>
				<!--
					打包之前过滤掉不想要被打进 .war包的jar,注意:这个地方,本来路径应该是
					WEB-INF/lib/anaalyzer-2.0.4.jar,但是经过多次试验,不能这样,至于咋回事儿,搞不清楚。。经多方查证均无结果
					暂且这样吧,虽然显得很丑陋,但是总能解决问题吧
				-->
				<warSourceExcludes>*/lib/analyzer-2.0.4.jar</warSourceExcludes>
				<webResources>
					<resource>
						<!-- 元配置文件的目录,相对于pom.xml文件的路径 -->
						<directory>src/main/webapp/WEB-INF</directory>

						<!-- 是否过滤文件,也就是是否启动auto-config的功能 -->
						<filtering>true</filtering>

						<!-- 目标路径 -->
						<targetPath>WEB-INF</targetPath>
					</resource>
				</webResources>
			</configuration>
		</plugin>

 ---其实执行mvn:package就可以了 不用在pom 中配这么多..  maven 会把打的war包放在项目目录的target目录下。 而且我使用mvn  war:war 时 打的包出问题了 不知道为啥.. 后来用mvn package 就没问题。不知道大家有没有遇到过...

2
0
分享到:
评论

相关推荐

    maven 私服 nexus3 安装包

    总结,Nexus3 是一个强大且灵活的 Maven 私服解决方案,虽然在使用过程中可能会遇到各种问题,但通过了解其工作原理和配置细节,我们完全可以克服这些困难,充分利用它来优化软件开发流程。在日常开发中,不断学习和...

    Maven Nexus 私服搭建

    Maven Nexus 私服搭建 从零开始,资源下载、安装指导、开发配置说明

    配置maven私服nexus

    Nexus是一个强大的Maven仓库管理器,它极大地简化了自己内部仓库的维护和外部仓库的访问。利用Nexus,你可以只在一个地方就能完全控制访问和部署在你所维护仓库中的每个Artifact。Nexus是一套“开箱即用”的系统不...

    Maven私服nexus安装包

    Maven私服,全称Maven Repository Manager,是Apache Maven项目管理工具的一个重要组件,主要用于解决Maven构建过程中依赖库的管理和分发问题。它能够作为一个内部仓库,存储并管理组织内部使用的JAR、WAR和其他构件...

    maven私服nexus最新版本2.14

    Maven 是一个广泛使用的项目管理和综合工具,它通过管理项目的构建、依赖关系以及发布等流程,简化了 Java 应用的开发过程。Nexus 是 Sonatype 公司推出的一款强大的 Maven 私服,它作为一个中央仓库管理器,提供了...

    linux-maven-maven私服nexus安装文档

    Linux Maven Maven私服Nexus安装文档主要涵盖了在CentOS操作系统上安装和配置Maven以及搭建Maven私有仓库Nexus的详细步骤。以下是整个过程的详细说明: 1. **安装Maven** - **确认安装源**:首先,你需要检查你的...

    Windows 下Nexus搭建Maven私服

    - **无法访问互联网**:某些企业或项目处于安全考虑,不允许直接访问外部网络,这时候就需要一种解决方案来解决内部依赖管理问题。 为了解决这些问题,搭建 Maven 私服成为了一种常见且高效的解决方案。其中,Nexus...

    maven 私服 nexus2 安装包

    Maven 私服,全称是 Apache Maven Repository Manager,主要用于管理项目构建过程中的依赖库。Nexus 是其中一款广泛应用的工具,特别是它的 2.x 版本,因其稳定性和易用性而备受开发者喜爱。在本文中,我们将详细...

    maven私服搭建-nexus的部署

    Nexus 是一个由 Sonatype 开发的 Maven 私服解决方案,它提供了强大的仓库管理功能,支持 Maven、Gradle、Ivy 等多种依赖管理工具。Nexus 支持多种仓库类型,包括 Maven 仓库、NPM 仓库、Docker 仓库等。 二、Nexus...

    建立Maven私服 – Nexus下载、安装、配置、使用

    Nexus是Sonatype公司提供的一个强大的Maven私服解决方案,不仅支持Maven,还支持其他如npm、RubyGems等包管理工具。 ## 1. Nexus下载 首先,你需要从Sonatype官方网站...

    使用Nexus搭建Maven私服

    在实际的企业开发中经常会遇到的问题:在进行Maven项目开发时,所需要的构件都是通过Maven的中央仓库或者第三方的Maven仓库下载到本地,那么企业内部开发使用也会遇到一些问题,团队内的每个使用者都需要去下载相应...

    maven私服nexus版本2.14

    总结,Nexus 2.14作为Maven私服,提供了高效、安全的组件管理方案。尽管现在有更新的版本可用,但在Java 7环境下,Nexus 2.14仍是一个可靠的选择。正确配置和使用Nexus,可以帮助开发团队优化构建流程,提高软件开发...

    Nexus搭建Maven私服 +maven安装步骤

    Nexus 搭建 Maven 私服可以帮助开发团队更好地管理项目依赖项和构件,提高项目构建和部署的效率。通过本文,我们了解了 Nexus 的功能和安装步骤,以及如何创建 Nexus 仓库和修改 Maven 配置文件以便从 Nexus 下载...

    Linux版maven私服nexus

    总之,Linux版的Maven私库Nexus是一个强大且灵活的解决方案,它可以提高开发效率,提供安全的依赖管理,并降低网络问题对项目的影响。正确配置和使用Nexus,可以极大地优化Java项目的工作流程。

    在CentOS下使用nexus搭建maven私服的安装教程

    随着企业级项目规模的不断扩大和技术栈的日益复杂,如何有效地管理项目中的依赖成为了一个重要的问题。Maven作为Java生态中最流行的构建工具之一,通过其强大的依赖管理和项目构建能力,极大地简化了这一过程。然而...

    maven私服nexus-2.14.8-01-bundle.tar.gz

    总结,Nexus 2.14.8-01作为一款成熟的Maven私服解决方案,其强大的仓库管理功能和便捷的使用体验使得它在Java开发领域备受推崇。通过学习和应用Nexus,开发者可以更高效地管理项目依赖,提高开发效率,同时确保项目...

    开发+MAVEN私服+nexus最新版+jar包依赖

    这时,引入Maven私有仓库,也就是Nexus,便成为了解决这一问题的有效方案。本文将详细介绍如何使用最新的Nexus版本搭建和使用MAVEN私服,以及如何实现jar包依赖。 **1. Maven与Maven私服** Maven是Apache软件基金...

    maven私服nexus最新版本2.10

    在Maven项目中,Nexus作为私有Maven仓库,可以用于缓存远程仓库的依赖,减少网络延迟,同时也可以作为内部团队共享构件的平台,确保代码的安全性和一致性。 **Nexus的功能** 1. **仓库管理**:Nexus支持多种类型的...

Global site tag (gtag.js) - Google Analytics