2012-01-06 60 views
4

我想從集成在maven生命週期中的數據庫生成er-diagram。 SchemaSpy生成er-diagram並使用maven-schemaspy-plugin,應該可以將這個集成到生命週期過程中。 (如果有人有這個更好的主意,請讓我知道)maven-schemaspy-plugin不起作用(可能是存儲庫問題)

我試着用下面的簡單pom.xml(它只應該生成er圖);但插件不啓動;它甚至不能被下載:

<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> 

    <groupId>test.schemaspy</groupId> 
    <artifactId>SchemaSpyGenerateDB_02</artifactId> 
    <version>1.0-SNAPSHOT</version> 
    <packaging>jar</packaging> 

    <name>SchemaSpyGenerateDB_02</name> 
    <url>http://maven.apache.org</url> 

    <properties> 
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
    </properties> 

    <dependencies> 
    <dependency> 
     <groupId>maven-plugins</groupId> 
     <artifactId>maven-schemaspy-plugin</artifactId> 
     <version>1.0</version> 
    </dependency> 
    <dependency> 
     <groupId>maven-plugins</groupId> 
     <artifactId>maven-schemaspy-plugin</artifactId> 
     <version>1.0</version> 
     <type>plugin</type> 
    </dependency> 
    </dependencies> 
    <!-- To use the report goals in your POM or parent POM --> 
    <reporting> 
    <plugins> 
     <plugin> 
     <groupId>maven-plugins</groupId> 
     <artifactId>maven-schemaspy-plugin</artifactId> 
     <version>1.1</version> 
      <configuration> 
       <databaseType>derby</databaseType> 
       <database>JPACertifiaction_Relationship</database> 
       <host>localhost</host> 
       <port>1527</port> 
       <user>user</user> 
       <password>password</password> 
      </configuration>    
     </plugin> 
    </plugins> 
    </reporting> 
</project> 

命令

mvn site:site 

使得消息

對於行家-插件的POM:行家-schemaspy-插件:罐子:1.0是缺少,沒有可用的依賴信息

Maven-plugins的POM:缺少maven-schemaspy-plugin:plugin:1.0,沒有依賴信息離子可

我也沒有成功以下設置試了一下:

<dependency> 
    <groupId>com.wakaleo.schemaspy</groupId> 
    <artifactId>maven-schemaspy-plugin</artifactId> 
    <version>5.0.1</version> 
</dependency> 
.... 
<reporting> 
<plugins> 
    <plugin> 
    <groupId>com.wakaleo.schemaspy</groupId> 
    <artifactId>maven-schemaspy-plugin</artifactId> 
    <version>5.0.1</version> 
.... 
    <repository> 
     <id>Wakaleo Repository</id> 
     <url>http://maven.wakaleo.com/mojo/maven-schemaspy-plugin/</url> 
    </repository> 

什麼我也迷惑的是,有不同的reposititories不同版本的1.0/5.0.1等什麼真的是官方嗎?

回答

1

你不需要的條目

<dependencies> 
    <dependency> 
     <groupId>maven-plugins</groupId> 
     <artifactId>maven-schemaspy-plugin</artifactId> 
     <version>1.0</version> 
    </dependency> 
    <dependency> 
     <groupId>maven-plugins</groupId> 
     <artifactId>maven-schemaspy-plugin</artifactId> 
     <version>1.0</version> 
     <type>plugin</type> 
    </dependency> 
    </dependencies> 

刪除它們。當你定義一個插件(稍後的插件部分)時,它會自動地通過maven下載。你的錯誤消息說1.0缺失,但你的插件是1.1,所以它不適合你的依賴關係。

maven-schemaspy-plugin和com.wakaleo.schemaspy插件是來自不同作者的不同插件。他們都不是「官方schemaspy」maven插件。我只能用wakaleo插件解決它(使用maven 3)。其他插件接縫不再可用。

隨着Maven 3網站代的變化,請參閱site generation in Maven 3。在本博客中提到的,你必須有這樣的插件(注意版本已經改變):

 <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-site-plugin</artifactId> 
      <version>3.1</version> 
      <configuration> 
       <reportPlugins> 
        <plugin> 
         <groupId>com.wakaleo.schemaspy</groupId> 
         <artifactId>maven-schemaspy-plugin</artifactId> 
         <version>1.0.4</version> 
         <configuration> 
          <databaseType>derby</databaseType> 
          <database>JPACertifiaction_Relationship</database> 
          <host>localhost</host> 
          <port>1527</port> 
          <user>user</user> 
          <password>password</password> 
         </configuration> 
        </plugin> 
       </reportPlugins> 
      </configuration> 
     </plugin> 
    </plugins> 
</build> 

,你需要的鏈接庫:

<pluginRepositories> 
    <pluginRepository> 
     <id>Wakaleo Repository</id> 
     <url>http://www.wakaleo.com/maven/repos/</url> 
    </pluginRepository> 
</pluginRepositories> 

然後插件開始。其餘的由你決定:-)

+0

使用''部分的maven2配置樣式保留[推薦格式](http://maven.apache.org/plugins/maven-site-plugin/maven-3的.html#Configuration_formats)。不要使用''。 – 2014-06-10 12:39:32