2010-05-31 20 views
13

使用谷歌代码svn作为基本的Maven仓库很容易。在Google Code svn上部署maven生成的网站?

但是,使用MVN网站:有效地部署在谷歌代码似乎很难。

到目前为止,我只找到这些解决方案:

我要寻找一个解决方案,允许新的开发人员在我的项目检查取出当前源并使用它,无需安装PERL或学习奇怪的步骤来执行或等待数小时。

+0

如果你也遇到了这个问题,请投票提出问题。我非常渴望寻找这样的解决方案:-) – xamde 2010-06-01 13:21:06

回答

-2

我建议你使用https://maven2-repository.dev.java.net/来部署开源文物。配置和使用非常简单。

主要的“问题”是,你需要创建一个帐户,但你只能用它来部署文物,而且还有托管在谷歌代码

+0

投票。嗨,我正在寻找一种方法来部署一个Maven *网站*,这是吨和大量生成的HTML文件,应该暴露在公共Web服务器上。在谷歌代码的svn仓库上运行Maven仓库是很好的。 – xamde 2010-10-13 15:54:00

+0

我想你已经尝试了下面的配置技巧,对吧? http://code.google.com/p/maven-googlecode-plugin/wiki/MavenSiteDeployOnSVN – 2010-10-14 11:21:03

+0

啊,我会试试这个。谢谢。但是,这似乎也表明这个可怕的慢马车供应商。这对于数千个文件来说太慢了。 – xamde 2010-10-15 12:06:43

0

会像rsync的解决方案更容易源代码?你基本上想要将本地生成的HTML等树映射到远程服务器。

否则,你可以得到Maven来生成和发布站点使用,比方说,哈德森持续集成构建的一部分。如果您需要该站点全球可用,则不适用 - 除非要打开Hudson服务器。

+0

当然,这将有助于 - 如果谷歌SVN将运行一个rsync服务器,它AFAIK它不。 AFAIK没有svn服务器呢。问题的确是速度。 Maven似乎为每个文件打开一个新的连接,或者至少有一个webdav-put。现在,我使用我大学的服务器,并且可以在服务器上运行解压。 Maven然后做scp,记录下来并运行unzip。非常好,快捷和方便。对于Google SVN,我相信通过SVN协议代替WebDAV协议的智能应该可以以某种方式工作,但我从来没有这样做过。 – xamde 2010-11-03 15:46:27

1

如何将maven工件部署到Google代码svn?

I.创建包含发布和快照子文件夹的m2文件夹

二。添加依赖性maven-svn-wagon

 
    <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-deploy-plugin</artifactId> 
     <version>2.5</version> 
     <dependencies> 
      <dependency> 
       <groupId>com.google.code.maven-svn-wagon</groupId> 
       <artifactId>maven-svn-wagon</artifactId> 
       <version>1.4</version> 
      </dependency> 
     </dependencies> 
    </plugin> 

III。添加路径到版本和快照库

 
    <distributionManagement> 
     <repository> 
      <id>project-name.googlecode.com</id> 
      <url>svn:https://project-name.googlecode.com/svn/m2/releases</url> 
     </repository> 
     <snapshotRepository> 
      <id>project-name.googlecode.com</id> 
      <url>svn:https://project-name.googlecode.com/svn/m2/snapshots</url> 
     </snapshotRepository> 
    </distributionManagement> 

四。不要忘记添加到settings.xml你的认证。代码

 
    <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 
          http://maven.apache.org/xsd/settings-1.0.0.xsd"> 
     <servers> 
      <server> 
       <id>project-name.googlecode.com</id> 
       <username>yourlogin</username> 
       <password>yoursvpassword</password> 
      </server> 
     </servers> 
    </settings> 

五,做你通常为生成一个站点所做的事情(你可以考虑看一下maven-svn-wagon pom file的maven-site-plugin设置)

VI。 mvn clean deploy

Example of such pom

而且,可能会有所帮助:maven-repository-for-google-code-projectmaven svn wagonMavenRepositoryInsideGoogleCode

1

这里是在对谷歌代码SVN Maven仓库我的谷歌代码项目为我的作品最简单的配置:

<build> 
... 
<extensions> 
    <extension> 
     <groupId>org.jvnet.wagon-svn</groupId> 
     <artifactId>wagon-svn</artifactId> 
     <version>1.9</version> 
    </extension> 
</extensions> 
</build> 

<distributionManagement> 
<repository> 
    <uniqueVersion>false</uniqueVersion> 
    <id>googlecode</id> 
    <url>svn:https://myproject.googlecode.com/svn/trunk/repo/</url> 
</repository> 
</distributionManagement> 

请注意网址:
用您的真实项目替换'myproject'名称,并确保您使用svn客户端在该位置创建了一个名为'repo'(或任何你想要的)的文件夹。
您可以通过您的谷歌代码网站浏览源代码来确定。
在您的pom配置如上之后,只需运行'mvn deploy'
确保你手头有你的谷歌代码密码...
祝你好运...