Maven

2011-11-21 26 views
5

ile Liquibase uzantılarını kullanıyorum 'u maven-liquibase-plugin numaralı telefondan kullanmaya çalışıyorum ancak çalışamıyorum. Ben komut satırından aynı changelog dosyası ile hiçbir sorunu yok, ama Maven IMaven

SEVERE 21/11/11 14:49:liquibase: Error thrown as a SAXException: Unknown Liquibase extension: dropTrigger. Are you missing a jar from your classpath? 

Ben burada

<?xml version="1.0" encoding="UTF-8" standalone="no"?> 
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ora="http://www.liquibase.org/xml/ns/dbchangelog-ext" xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-2.0.xsd http://www.liquibase.org/xml/ns/dbchangelog-ext http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-ext.xsd"> 
    <changeSet author="PE1926" id="ONCHANGE" runOnChange="true"> 
    <ora:dropTrigger schemaName="" triggerName="TRIGGER_01"/> 
    <rollback> 
     <sqlFile path="latest/trg/TRIGGER_01.sql" endDelimiter="$"/> 
    </rollback> 
</changeSet> 
kullanıyorum değişiklik günlüğü dosyasıdır aşağıdaki hata mesaj almak bir pom.xml özü

[...] 
<dependencies> 
    <dependency> 
     <groupId>com.oracle</groupId> 
     <artifactId>ojdbc14</artifactId> 
    </dependency> 
    <dependency> 
     <groupId>org.liquibase.ext</groupId> 
     <artifactId>liquibase-oracle</artifactId> 
     <version>1.2.0</version> 
    </dependency> 
</dependencies> 

<build> 
    <plugins>  
     <plugin> 
      <groupId>org.liquibase</groupId> 
      <artifactId>liquibase-maven-plugin</artifactId> 
      <version>2.0.3</version> 
      <executions> 
       <execution> 
        <phase>process-resources</phase> 
        <goals><goal>status</goal></goals> 
       </execution> 
      </executions> 
      <configuration> 
       <changeLogFile>src/main/resources/update.xml</changeLogFile>  
       <propertyFile>${db-resources.dir}/liquibase.properties</propertyFile> 
       <promptOnNonLocalDatabase>false</promptOnNonLocalDatabase> 
       <verbose>true</verbose> 
      </configuration> 
     </plugin> 
    </plugins> 
</build> 

Ayrıca plugin bağımlılığı olarak liquibase-oracle eklemeyi denedim ama aynı hata iletisini alıyorum.

Maven'in Liquibase uzantılarını kullanmanın doğru yolu bu mu? Bir şey mi eksik?

+0

Ben ancak bir 'dependencies' bölüm eklemek gereken bir eklentinin bağımlılığını ifade etmek için bir Liquibase kullanıcı değilim ** içinde ** 'plugin' öğesi. –

+0

Belirtildiği gibi, lüzumsuz bağımlılık olarak liyabaz-oracle eklemeyi denedim. Ancak, hepsini eklenti bağımlılıkları olarak eklemeyi denedim ve işe yarıyor gibi görünüyor. Kabul etmem için bir cevap yazar mısın? – fglez

+0

Birazdan yapacak. –

cevap

7

Tüm sıvı merkezi bağımlılıkları Eklenti bağımlıları olarak ekleyin.

+0

Aptalca basit ... Bunu anladım ama geç oldu ve çok fazla kahve içtim. Teşekkürler! –

0

Ben başka bağımlılıkları eklemek gerek yoktu - bu benim için yaptığını:

<pluginManagement> 
    <plugin> 
    <groupId>org.liquibase</groupId> 
    <artifactId>liquibase-maven-plugin</artifactId> 
    <version>${version.liquibase}</version> 
    <configuration> 
     <propertyFileWillOverride>true</propertyFileWillOverride> 
     <driver>oracle.jdbc.OracleDriver</driver> 
     <promptOnNonLocalDatabase>false</promptOnNonLocalDatabase> 
     <changeLogFile>liquibase-master-changelog.xml</changeLogFile> 
     <!-- ensure a liquibase.properties is available in each module that runs liquibase --> 
     <propertyFile>liquibase.properties</propertyFile> 
    </configuration> 
    <dependencies> 
     <dependency> 
     <groupId>org.liquibase.ext</groupId> 
     <artifactId>liquibase-oracle</artifactId> 
     <version>${version.liquibase.ora-ext}</version> 
     </dependency> 
    </dependencies> 
    <executions> 
     <execution> 
     <phase>test-compile</phase> 
     <goals> 
      <goal>update</goal> 
     </goals> 
     </execution> 
    </executions> 
    </plugin> 
</pluginManagement> 
+0

Tüm liquibase bağımlılıklarını eklenti bağımlılıkları olarak eklediniz. Http://stackoverflow.com/a/8215645/33622 adresine bakın. – fglez