Vaadin/Hibernate/Springプロジェクト用に動作するMavenアーキタイプを作成しました。このアーキタイプをローカルリポジトリにインストールし、それを使用して新しいMavenプロジェクトを生成することができます。
次に、アーキタイプを会社の内部リポジトリにデプロイして、他の開発者が使用できるようにします。ただし、mvn deploy
を実行すると、次のエラーメッセージが表示されます。
[ERROR] Failed to execute goal org.Apache.maven.plugins:
maven-deploy-plugin:2.7:deploy (default-deploy) on project
vaadin-hibernate-archetype: Failed to deploy artifacts/metadata:
No connector available to access repository maven.planet-ic.de
(maven.planet-ic.de/planet-ic-releases) of type default using the
available factories WagonRepositoryConnectorFactory -> [Help 1]
私が見逃しているconnector
とは何ですか?
編集:私は誰かに私の問題を解決するように求めているのではなく、'connector'
が何であるかについての洞察を求めています。
興味がある場合は、pom.xmlを次に示します。
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.Apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.Apache.org/POM/4.0.0 http://maven.Apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<groupId>de.planetic.maven.archetype.vaadin</groupId>
<artifactId>vaadin-hibernate-archetype</artifactId>
<version>1.1.0</version>
<packaging>jar</packaging>
<inceptionYear>2013</inceptionYear>
<description>
This archetype generates a Vaadin application for use with Hibernate, and to be deployed to a Tomcat 7 server. It may also work with other Tomcat versions and other servers.
</description>
<developers>
<developer>
<name>Maximilian Friedersdorff</name>
<email>[email protected]</email>
</developer>
</developers>
<scm>
<connection>scm:svn:http://Subversion.planet-ic.de/internal/maven/archetype/pinnwand-webapp/tags/pinnwand-webapp-archetype-1.1.0</connection>
<developerConnection>scm:svn:http://Subversion.planet-ic.de/internal/maven/archetype/pinnwand-webapp/tags/pinnwand-webapp-archetype-1.1.0</developerConnection>
<url>http://Subversion.planet-ic.de/internal/maven/archetype/pinnwand-webapp/tags/pinnwand-webapp-archetype-1.1.0</url>
</scm>
<distributionManagement>
<repository>
<id>maven.planet-ic.de</id>
<name>planet-ic-releases</name>
<url>maven.planet-ic.de/planet-ic-releases</url>
</repository>
<snapshotRepository>
<id>maven.planet-ic.de</id>
<name>planet-ic-snapshots</name>
<url>http://maven.planet-ic.de/planet-ic-snapshots</url>
</snapshotRepository>
</distributionManagement>
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.Apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<version>2.7</version>
</plugin>
</plugins>
</pluginManagement>
<extensions>
<extension>
<groupId>org.Apache.maven.wagon</groupId>
<artifactId>wagon-ssh</artifactId>
<version>2.4</version>
</extension>
</extensions>
</build>
</project>
デプロイしようとしているMavenリポジトリに応じて、アーティファクトをアップロードするために利用できるさまざまな方法があります。
これらのメソッドは、さまざまなトランスポートプロトコル(ssh、davなど)用の Maven Wagon コネクタを使用して実装されます。これは、探している用語です。
拡張機能の使用に関するApache Mavenガイド セットアップにコネクタを追加する方法の概要を説明します。
次の行で:
<url>maven.planet-ic.de/planet-ic-releases</url>
Ftpやhttpなどではなくファイルコネクタを使用していることをMavenに伝える必要があるため、「file://」のプレフィックスを追加する必要があります。そして、そこで相対パスを使用する方がよいでしょう。例えば:
<url>file://${project.basedir}/maven.planet-ic.de/planet-ic-releases/</url>
<build>
<extensions>
<extension>
<groupId>org.Apache.maven.wagon</groupId>
<artifactId>wagon-ssh</artifactId>
<version>2.4</version>
</extension>
</extensions>
</build>
<distributionManagement>
<repository>
<id>remoteserver</id>
<name>MyCompany Repository</name>
<url>scp://server/path/repo</url>
</repository>