ホームページ  >  記事  >  Java  >  nexusを利用してLAN専用サーバーを構築する

nexusを利用してLAN専用サーバーを構築する

零下一度
零下一度オリジナル
2017-07-23 15:00:282838ブラウズ

nexusを使ってLANプライベートサーバーを構築する

1. Maven ウェアハウスを理解する

1.1 Maven ウェアハウスの役割

Maven がまだ使われていなかった頃、Eclipse のオリジナルプロジェクトスケルトンを使ってプロジェクトをビルドすると、プロジェクト ディレクトリに lib フォルダーが存在することがよくあります。新しいプロジェクトがビルドされるたびに、プロジェクトに必要な jar ファイルを保存するために使用されます。次に、jar を lib フォルダー構成パスにコピーします。明らかに、多くの繰り返し作業があり、プロジェクトごとに使用される jar パッケージが異なるため、ゆっくりと区別する必要があります。次に、svn や git などのプロジェクト管理ツールを使用しましたが、コード ベースに大量の jar ファイルを導入する必要がありましたが、これはあまり適切ではありませんでした。
Maven は、これらの問題の解決に役立ちます。Maven ウェアハウスは、jar ファイルの保管に特に使用される場所です (プロジェクト war、zip、pom、およびその他のファイルの保管にも使用できます)。各 jar ファイルには、jstl jar パッケージなどの Maven ウェアハウス内の座標が割り当てられます:

<groupid>javax.servlet</groupid>        组ID
<artifactid>jstl</artifactid>           构建ID
...  其余属性后续介绍

このようにして、Maven はプロジェクトの依存関係のバージョンを簡単に制御できます。簡単に言うと、Maven ウェアハウスはプロジェクト コンポーネントを統一した方法で管理するのに役立ちます。

1.2 Maven ウェアハウス分類

nexusを利用してLAN専用サーバーを構築する
プロジェクト構築のためのクエリパス:まずローカルウェアハウスをクエリし、見つからない場合はセントラルウェアハウスをクエリし、見つからない場合はエラーを報告します。中央倉庫のアドレスは次のとおりです:

  1. プライベート サーバー ネクサス

  2. の使用をお勧めします


  3. 上記の 3 つはより一般的であり、プロジェクトでよく使用されますが、ダウンロード速度が遅いことと、ウェアハウス ファイルは不完全なので、実際の企業開発ではプライベート サーバー ウェアハウスを構築する必要があります。

    2. nexus をインストールして使用します

    ここで、Maven プライベートサーバーの構築は単なるツールではないことに注意してください。ブロガーが使用しているバージョンは nexus-2.12.0 です。

  4. クリックしてダウンロード、パスワード: 1ar1

  5. ダウンロードが完了したら、解凍が完了すると、nexus-2.12.0-01-bundlenexus ディレクトリの下に表示されます。 -2.12.0-01binjsw: nexusを利用してLAN専用サーバーを構築する

  6. ブロガーのコンピューターは 64 ビットなので、最後のフォルダーを開きます:
    nexusを利用してLAN専用サーバーを構築する

  7. 2 番目の Bat ファイルをクリックして Windows サービスとして設定し、nexus を開き、 URL にアクセスします: http://localhost:8081/ nexus/starts の後、次のページが開きます。これは、nexus がインストールされ、正常に起動されたことを意味します。 nexusを利用してLAN専用サーバーを構築する

    3. Maven プライベート サーバーを設定します

  8. 右上隅の [ログイン] をクリックします。ログインに成功した後、アカウントのパスワードを変更して見つけることができます。

  9. 左側のナビゲーション「リポジトリ」をクリックします
    nexusを利用してLAN専用サーバーを構築する

デフォルトでいくつかのウェアハウスがあることがわかります。 ウェアハウスタイプの意味 タイプ:

  • ホストされたホストウェアハウス。jar パッケージなど、サードパーティによって許可されていない一部のコンポーネントを公開するために使用されます。 Oracle ドライバーなどの商用ソフトウェア

  • プロキシ プロキシ リモート ウェアハウス (上記の 3 つの Maven リモート ウェアハウスなど)。特定の jar ファイルがローカルに存在しない場合は、これらのプロキシ サイトからダウンロードされます。

  • releases 内部モジュール内のリリースモジュールのリリースウェアハウス

  • snapshots 内部スナップショットモジュールがリリースされるウェアハウス

  • サードパーティ サードパーティの依存関係のウェアハウス。jar パッケージのアップロード後に使用されます。ローカルで

  • グループ ウェアハウスは、開発者がセットアップを容易にするために他のウェアハウスを追加するために使用されます

プライベート サーバー ウェアハウスの構築を開始する 注目に値します: Maven プロジェクト インデックス: Maven プロジェクト インデックスは、検索機能を容易にするために使用されます。関連する依存関係はプライベート サーバー サイト上に構築されます。したがって、プライベート サーバーを構築する前に、約数十 MB の Maven インデックスをダウンロードする必要があります。


nexusを利用してLAN専用サーバーを構築する

Download Remote Indexes プロパティを True に変更し、[保存] をクリックします。インデックスのダウンロードの進行状況を確認できます。スケジュールされたタスクのメニュー バー。

3.
独自のプロキシ リモート ライブラリを追加します。プロジェクトでは、Jboss のいくつかの jar パッケージなど、いくつかの特別な jar ファイルを導入する必要がある場合があります。このとき、プライベート サーバーでリモート ウェアハウスをプロキシすることもできます。 追加後に [エージェント タイプを追加] をクリックし、ID、名前、URL を順番に入力します。この場合、プロジェクトでリモート ウェアハウスを構成する必要はありません。

<repository>
    <id>jboss</id>
    <name>JBoss Repository</name>
    <url>;/url>
    <releases>
        <updatepolicy>daily</updatepolicy><!-- never,always,interval n -->
        <enabled>true</enabled>
        <checksumpolicy>warn</checksumpolicy><!-- fail,ignore -->
    </releases>
    <snapshots>
        <enabled>false</enabled>
    </snapshots>
    <layout>default</layout>
</url></repository>

4.nexusを利用してLAN専用サーバーを構築する的使用,上面提到的一些特殊的商业性质相关的jar文件,比如oracle的驱动包,ojdbc.jar并不支持远程下载,这时候可以将我们本地下载好的jar包上传到私服。
nexusを利用してLAN専用サーバーを構築する

注意GAV设置要与你pom.xml中一致,上传后添加到Artifacts点击上传即可:
nexusを利用してLAN専用サーバーを構築する2
5.由于私服仓库数量过多,导致配置复杂度提高,所以需要用到上述的group类型仓库:
nexusを利用してLAN専用サーバーを構築する

切记点击刷新,刷新后点击唯一的一个group仓库,点击配置Configuration就可以看到刚才我们手动添加的代理仓库,然后将代理仓库添加到组仓库,这样依赖,项目中之需要配置组仓库的url就可以访问多个私服仓库。

四. 局域网使用maven私服

4.1 单个项目使用maven私服

在上述步骤完成后,即可在项目中引用私服,pom.xml中改变默认下载仓库url:
指定私服仓库,我的ip是170,不要全盘复制

<repositories>  
    <repository>  
        <id>nexus</id>  
        <name>nexus</name>  
        <url>http://192.168.1.170:8081/nexus/content/groups/public/</url>  
        <releases>  
            <enabled>true</enabled>  
        </releases>  
        <snapshots>  
            <enabled>true</enabled>  
        </snapshots>  
    </repository>  
</repositories>

指定插件仓库

<pluginrepositories>  
    <pluginrepository>  
        <id>nexus</id>  
        <name>nexus</name>  
        <url>http://192.168.1.170:8081/nexus/content/groups/public/</url>  
        <releases>  
            <enabled>true</enabled>  
        </releases>  
        <snapshots>  
            <enabled>true</enabled>  
        </snapshots>  
    </pluginrepository>  
</pluginrepositories>

配置好之后就可以从私服下载依赖包了。但是这种方式只能在改项目中起作用,每次配置项目都需要写两遍,为了将懒人模式进行到底,我们还可以指定全局的私有仓库。

4.2 全局指定私服

找到maven文件的中的nexusを利用してLAN専用サーバーを構築する文件
nexusを利用してLAN専用サーバーを構築する

在nexusを利用してLAN専用サーバーを構築する中添加配置:
在profiles>标签下添加

<profile>
    <repositories>
        <id>central</id>
        <name>central</name>
        <url>http://192.168.1.170:8081/nexus/content/groups/public/</url>
        <layout>default</layout>
        <releases>
            <enabled>true<enabled>
        </enabled></enabled></releases>
        <snapshots>
            <enabled>true<enabled>
        </enabled></enabled></snapshots>
    </repositories>
</profile>

配置好之后激活profile

<activeprofiles>  
    <activeprofile>central</activeprofile>  
</activeprofiles>

这样一来,这台电脑上所有maven项目下载jar文件时都会先访问局域网170的电脑。

-----------------------------------windows配置私服完毕-----------------------------------

扩展:setting,xml中各标签的意义

  1. servers(服务器)

<servers>
    <server>
        <id>server001</id>
        <username>my_login</username>
        <password>my_password</password>
        <privatekey>${usr.home}/.ssh/id_dsa</privatekey>
        <passphrase>some_passphrase</passphrase>
        <filepermissions>664</filepermissions>
        <directorypermissions>775</directorypermissions>
        <configuration></configuration>
    </server>
</servers>

id与pom.xml中distributionManagement的id保持一致,服务器标识
username和password表示服务器认证需要的用户民和密码
privateKey, passphrase一组密钥 (不常用)
filePermissions, directoryPermissions如果在部署的时候会创建一个仓库文件或者目录,这时候就可以使用权限(不常用)

2.mirrors(镜像)

<mirrors>
    <mirror>
        <id>planetmirror.com</id>
        <name>PlanetMirror Australia</name>
        <url>;/url>
        <mirrorof>central</mirrorof>
    </url></mirror>
</mirrors>

设置一个中央仓库的镜像,看仓库分类,也是远程仓库的一种配置方式。

3.profiles(构建环境)
这个可能比较难理解,maven权威指南一书中这样说:

  Profile能让你为一个特殊的环境自定义一个特殊的构建;
  构建环境的两个例子是产品环境和开发环境。当你在开发环境中工作时,你的系统可能被配置成访问运行在你本机的开发数据库实例,而在产品环境中,你的系统被配置成从产品数据库读取数据。Maven能让你定义任意数量的构建环境(构建profile),这些定义可以覆盖pom.xml中的任何配置。

简单理解就是你可以先profile中先构件好项目运行的环境,比如预设了A环境实在开发中使用,而实际上线是B环境,那么在上线的时候我们不需要一个个修改pom.xml中的配置,只需要激活改profile即可。

4.activation(激活构建环境 )

<activation>
    <activebydefault>false</activebydefault>
    <jdk>1.5</jdk>
    <os>
        <name>Windows XP</name>
        <family>Windows</family>
        <arch>x86</arch>
        <version>5.1.2600</version>
    </os>
    <property>
        <name>mavenVersion</name>
        <value>2.0.3</value>
    </property>
</activation>

指定profile中配置的环境在什么时候开始生效

5.activeProfiles(激活了的profile)

<activeprofiles>
<activeprofile>env-test</activeprofile>
</activeprofiles>

在nexusを利用してLAN専用サーバーを構築する最后的一个标签,表示env-test这个profile已被激活

以上がnexusを利用してLAN専用サーバーを構築するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。