https://www.cnblogs.com/yuanermen/p/4574473.html
I.概要
1、概要
プロジェクトは現在、基本的に会社がPWの内容を設定するように、プロジェクトを管理するためにMavenを使用して非常に必要である、とあなたが社内のJARパッケージを使用して管理することができますこの方法で、あなたはまた、サードパーティのJARを管理することができ、倉庫の外部ネットワークからダウンロードすることがないようにするたびに。PWは、2つのソフトウェア建てネクサスとartifactoryを持って、両方が自分の長所を持っています。artifactory 設定後3年前、ネクサスでこの構成。ネクサスは比較的人気がPWです。
2、ネクサス導入
ネクサスは大幅独自の内部倉庫の外部倉庫に維持し、アクセスを簡素化する強力なMavenのリポジトリマネージャ、です。完全アーティファクトのそれぞれによって維持、あなたの倉庫にアクセスし、展開を制御することができるようになります1つだけの場所でネクサスを使用することができます。ネクサスは、「箱から出して」システムのセットがデータベースを必要としない、それはLuceneのが追加されたデータを整理するためにファイルシステムを使用しています。統合されたEclipseのm2eclipseの使用により、完全なREST APIを提供するとのRestletを使用するインターフェースを開発するためにExtJSのを使用してネクサス。ネクサスは、WebDAVおよびLDAP認証セキュリティをサポートしています。
ダウンロードネクサスは次のとおりです。http:までZIP圧縮されたパッケージをダウンロードするには公式サイトへ//www.sonatype.org/nexus/go/、抽出した後に2つのフォルダ、1はネクサス-2.11.0-で発見02、およびその他のsonatype-仕事であり、最初のフォルダは、ネクサスが実行する必要があるネクサスを実行するために必要なファイルが含まれている、2番目のフォルダのディレクトリは、ネクサスは、コンフィギュレーション・ファイルは、ファイル、リポジトリのファイルを、生成されたログが含まれネクサスをバックアップするために必要な時間は、このディレクトリは、デフォルトのバックアップファイルです。
第二に、環境を準備
1、Mavenの3.3.3は、 最新バージョンをダウンロード3 \
2、ネクサス2.11.1-01バンドル現在の最新バージョンをダウンロード
三、ネクサスのインストールと設定
1、ネクサスインストール
ネクサスをダウンロードした後、のみインストールしたいディレクトリにフォルダを抽出した後、アーカイブファイルを解凍する必要がある - 私はDドライブでした。
2、ネクサスの環境変数を設定します
(詳細に説明されていない比較的単純な)で、環境変数PATHにbinディレクトリのネクサス
3.設定ネクサス
ビンのネクサスのルートに\ JSW \ confに\ wrapper.confのファイルが見つかりました。
#、JVM実行可能ファイルは、約15行でなければならない構成JAVAへのパスを設定します
wrapper.java.command = D:\プログラムファイル\のJava \ jdk1.7.0_71 \ビン\のJava
あなたが(コンピュータの設定のJavaに依存する)ことができたためにJavaのディレクトリ構成の下のパスのjava.exe
4、ネクサス試験
管理者権限でコマンドラインを開きます(ユーザーが管理者が思い出されますではない場合:エラーOpenSCManagerはアクセス拒否を失敗しました)
コマンドラインの成功から成功した構成--nexus環境変数の設定を証明した入力ネクサス次のヒントの場合
5、ネクサスは、インストールと起動します
以下の情報ネクサス開始を入力します。説明ネクサスが設定され、まだインストールされていません
入力ネクサスインストールするには、インストール - 正常にインストールされ、以下の情報を
ネクサスを開始しますにネクサスの開始を入力します
6、起動に失敗しました
それはプロンプト起動に失敗した場合:
ラッパー| ネクサスサービスが開始しましたが、起動に失敗しました。
2つの理由が考えられます
1、ネクサスのインストールディレクトリビン\ JSW \ confに\ Javaの構成エラーの原因は、(エラー1の可能性:間違ったバージョン、エラー2の可能性:間違ったパス)を開始できませんでしたのwrapper.conf。
2,8081ポートが占有されている原因は(非システムプロセスがかかる場合、プロセスの終了をすることができます)を開始、または現在のファイルではなく/conf/nexus.propertiesネクサスのインストールで、アプリケーションポート= 8081を見つけるために、ポート桟橋を修正するために失敗しましたライン上の8181。
7、成功
デフォルトのアドレス:のhttp://127.0.0.1:8081 /ネクサス
右上、デフォルトのアカウントにログインし、[ログイン]をクリックします。admin、パスワード:admin123
四、ネクサス初期設定
1、ネクサス全体的なプレゼンテーション
グループ(倉庫群)、ホストされた(ホスト)、プロキシ(代理)とバーチャル(仮想):我々は、倉庫タイプ4種類の上記の画像から見ることができます。フォーマットは、各タイプは、ここで我々がMaven1が表示されない、またはMaven1 Maven2をしています。倉庫・ポリシー(方針)は倉庫が(リリース)バージョンや倉庫のスナップショット(スナップショット)バージョンをリリースしていることを示しています。
図では、ネクサスは、いくつかの倉庫のデフォルトを示しています。
公開リポジトリ:倉庫グループ、重合倉庫をリリースし、同じアドレスを使用してサービスを提供するために、すべてのポリシー。
サードパーティ:ホスト型倉庫のリリースのための戦略は、メンバーが公共の倉庫から入手することができませんリリースのサードパーティパブリッシャーを展開するために使用しました。
Apacheのスナップショット:ウェアハウス・エージェントのポリシーのスナップショット、コンポーネントのApache Mavenのリポジトリのスナップショット・バージョンのための薬剤。
中央:中央倉庫ウェアハウス・エージェントのMaven、リリースのための戦略、唯一の中央倉庫をダウンロードしてキャッシュを解放メンバー。
中央M1シャドウ:仮想倉庫maven1タイプフォーマット。
Codehausのスナップショット:ウェアハウス・エージェントのスナップショットエージェントCodehausのMavenのリポジトリバージョン。
Release:策略为Release的宿主类型仓库,用来部署组织内部的发布版本构件。
Snapshots:策略为Snapshots的宿主类型仓库,用来部署组织内部的快照版本构件。
2、点击左侧Repositories项 -> central仓库 -> Configuration -> Download Remote Indexes=True -> Save,表示下载远程仓库的索引。
同时override local storage location 也是可以改一下。
点击“save”。
点击左边的“Administration”->"Scheduled Tasks"链接,如果没有出现“Update Repositories Index”处于Running状态,那么需要在Public Repositories行右击,点击"Update Index"。
然后再点击Schedule Tasks就可以看到有任务处于Running状态了。
等到索引下载完成之后,就可以在"Repositories"界面中,选择Browser Index选项卡,可以看到Maven中央仓库内容的树形结构.
3、手动上传JAR包
GAV Definition:选择GAV Parameters
输入JAR包对应的:Group\Artifact\verison\
选择JAR
第三步上传包,第四步add artifact 最后update artifact.
这样包上传成功。POM可以用了。
4、Maven的配置
在Maven安装目录conf/setting.xml 在<mirrors>内配置如下内容
<mirror> <id>nexus</id> <name>internal nexus repository</name> <url>http://127.0.0.1:8081/nexus/content/groups/public/</url> <mirrorOf>*</mirrorOf> </mirror>
在执行
mvn clean eclipse:eclipse -Ddowloadsources=true
下自动从Nexus私服中下载JAR包。
5、部署构件到私服
我们在实际开发过程是多个人的,那么总有一些公共模块或者说第三方构件是无法从Maven中央库下载的。我们需要将这些构件部署到私服上,供其他开发人员下载。用户除了通过界面手动上传构件,也可以配置Maven自动部署构件至Nexus的宿主仓库。
使用Maven部署构件到Nexus私服上日常开发的快照版本部署到Nexus中策略为Snapshot的宿主仓库中,正式项目部署到策略为Release的宿主仓库中,POM的配置方式如下:
<!-- 配置远程发布到私服,mvn deploy --> <distributionManagement> <repository> <id>releases</id> <name> Nexus Release Repository </name> <url> http://127.0.0.1:8081/nexus/content/repositories/releases/ </url> </repository> <snapshotRepository> <id>snapshots</id> <name> Nexus Snapshot Repository </name> <url> http://127.0.0.1:8081/nexus/content/repositories/snapshots/ </url> </snapshotRepository > </distributionManagement >
Nexus的仓库对于匿名用户只是只读的。为了能够部署构件,我们还需要再settings.xml中配置验证信息:
server> <id>snapshots</id> <username>admin</username> <password>admin123</password> </server> <server> <id>releases</id> <username>admin</username> <password>admin123</password> </server>
其中,验证信息中service的id应该与POM中repository的id一致。
这样通过 maven 可以自动布置到Nexus私服中了。命令如下:
mvn clean deploy -Dmaven.test.skip=true
这样就可以把把自动的发布到nexus中去了。
6、完工
一、概述
1、概要
现在的项目基本都是用Maven来管理工程,这样一来在公司内容搭建一个私服就非常有必要了,这样一来可以管理公司内部用的JAR包,也可以管理第三方的各种JAR来,以免每次都要从外网的仓库中下载。私服有两种软件搭建Nexus和artifactory,这两个各有优点。artifactory 三年前已配置过了,本文配置一下Nexus。Nexus还是一个比较流行的私服。
2、Nexus介绍
Nexus是一个强大的Maven仓库管理器,它极大地简化了自己内部仓库的维护和外部仓库的访问。利用Nexus你可以只在一个地方就能够完全控制访问 和部署在你所维护仓库中的每个Artifact。Nexus是一套“开箱即用”的系统不需要数据库,它使用文件系统加Lucene来组织数据。Nexus 使用ExtJS来开发界面,利用Restlet来提供完整的REST APIs,通过m2eclipse与Eclipse集成使用。Nexus支持WebDAV与LDAP安全身份认证。
Nexus的下载地址是:http://www.sonatype.org/nexus/go/到官网上将ZIP的压缩包下载下来即可,解压之后发现有两个文件夹,一个是nexus-2.11.0-02,另一个是sonatype-work;第一个文件夹包含了Nexus运行所需要的文件,是运行Nexus必须的;第二个文件夹目录包含Nexus生成的配置文件、日志文件、仓库文件等,当需要备份Nexus的时候,默认备份的是此目录文件。
二、环境准备
1、maven 3.3.3 下载最新的版本3\
2、Nexus 2.11.1-01-bundle下载当前最新的版本
三、Nexus的安装配置
1、Nexus安装
下载完nexus之后,只需要将压缩包解压,将解压后的文件夹放到你想要安装的目录即可——我的为D盘。
2、配置Nexus环境变量
将nexus的bin目录设置到path的环境变量中(比较简单不详细讲解了)
3、配置Nexus
在 nexus的根目录bin\jsw\conf\wrapper.conf的文件在找到
# Set the JVM executable应该在15行左右,配置JAVA的路径
wrapper.java.command=D:\Program Files\Java\jdk1.7.0_71\bin\java
将java目录下的java.exe的路径配置到里面即可(根据你电脑java的配置)
4、Nexus的测试
用管理员权限打开命令行(如果你的用户不是Administrator则会提醒:出现 OpenSCManager failed 拒绝访问的错误)
在命令行中输入nexus如果出现下面提示这证明配置成功——nexus的环境变量配置成功
5、Nexus安装并启动
输入nexus start出现如下信息:说明nexus配置好了,但是还没有安装
输入nexus install即可安装——如下信息即安装成功
启动nexus:输入nexus start即可
6、启动失败
如果启动失败提示:
wrapper | The nexus service was launched, but failed to start
可能有两种原因:
1、Nexus安装目录 bin\jsw\conf\wrapper.conf中的java配置错误导致启动失败(错误可能性1:版本错误;错误可能性2:写错路径了).
2、8081端口被占用导致启动失败(如果是非系统进程占用,结束该进程即可),或修改Jetty的端口,在Nexus的安装目前/conf/nexus.properties文件中找到 application-port=8081 改为8181就行了。
7、成功
默认地址:http://127.0.0.1:8081/nexus
点击右上角Log In进行登录,默认帐号:admin、密码:admin123
四、Nexus初始化配置
1、Nexus整体介绍
我们可以从上图中看到四种仓库类型:group(仓库组)、hosted(宿主)、proxy(代理)和virtual(虚拟)。其中每种类型的Format有Maven1或者Maven2,这里我们不看Maven1的。仓库的Policy(策略)表示该仓库为发布(Release)版本还是快照(Snapshot)版本仓库。
在图中,Nexus列出了默认的几个仓库:
Public Repositories:仓库组,将所有策略为Release的仓库聚合并通过一致的地址提供服务。
3rd party:一个策略为Release的宿主类型仓库,用来部署无法从公共仓库获得的第三方发布版本构件。
Apache Snapshots:策略为Snapshots的代理仓库,用来代理Apache Maven仓库的快照版本构件。
Central:该仓库代理Maven的中央仓库,策略为Release,只会下载和缓存中央仓库中的发布版本构件。
Central M1 shadow:maven1格式的虚拟类型仓库。
Codehaus Snapshots:代理Codehaus Maven仓库快照版本的代理仓库。
Release:策略为Release的宿主类型仓库,用来部署组织内部的发布版本构件。
Snapshots:策略为Snapshots的宿主类型仓库,用来部署组织内部的快照版本构件。
2、点击左侧Repositories项 -> central仓库 -> Configuration -> Download Remote Indexes=True -> Save,表示下载远程仓库的索引。
同时override local storage location 也是可以改一下。
点击“save”。
点击左边的“Administration”->"Scheduled Tasks"链接,如果没有出现“Update Repositories Index”处于Running状态,那么需要在Public Repositories行右击,点击"Update Index"。
然后再点击Schedule Tasks就可以看到有任务处于Running状态了。
等到索引下载完成之后,就可以在"Repositories"界面中,选择Browser Index选项卡,可以看到Maven中央仓库内容的树形结构.
3、手动上传JAR包
GAV Definition:选择GAV Parameters
输入JAR包对应的:Group\Artifact\verison\
选择JAR
第三步上传包,第四步add artifact 最后update artifact.
这样包上传成功。POM可以用了。
4、Maven的配置
在Maven安装目录conf/setting.xml 在<mirrors>内配置如下内容
<mirror> <id>nexus</id> <name>internal nexus repository</name> <url>http://127.0.0.1:8081/nexus/content/groups/public/</url> <mirrorOf>*</mirrorOf> </mirror>
在执行
mvn clean eclipse:eclipse -Ddowloadsources=true
下自动从Nexus私服中下载JAR包。
5、部署构件到私服
我们在实际开发过程是多个人的,那么总有一些公共模块或者说第三方构件是无法从Maven中央库下载的。我们需要将这些构件部署到私服上,供其他开发人员下载。用户除了通过界面手动上传构件,也可以配置Maven自动部署构件至Nexus的宿主仓库。
使用Maven部署构件到Nexus私服上日常开发的快照版本部署到Nexus中策略为Snapshot的宿主仓库中,正式项目部署到策略为Release的宿主仓库中,POM的配置方式如下:
<!-- 配置远程发布到私服,mvn deploy --> <distributionManagement> <repository> <id>releases</id> <name> Nexus Release Repository </name> <url> http://127.0.0.1:8081/nexus/content/repositories/releases/ </url> </repository> <snapshotRepository> <id>snapshots</id> <name> Nexus Snapshot Repository </name> <url> http://127.0.0.1:8081/nexus/content/repositories/snapshots/ </url> </snapshotRepository > </distributionManagement >
Nexus的仓库对于匿名用户只是只读的。为了能够部署构件,我们还需要再settings.xml中配置验证信息:
server> <id>snapshots</id> <username>admin</username> <password>admin123</password> </server> <server> <id>releases</id> <username>admin</username> <password>admin123</password> </server>
其中,验证信息中service的id应该与POM中repository的id一致。
这样通过 maven 可以自动布置到Nexus私服中了。命令如下:
mvn clean deploy -Dmaven.test.skip=true
这样就可以把把自动的发布到nexus中去了。
6、完工