2016-06-10 8 views
0

Ich brauche meine Dropwizard Jar im Linux-Server ausführen. Konfigurationsdateien innerhalb von jar. Wenn ich Maven in meinem Entwickler verwende, alles in Ordnung. Ich habe ein Problem für beide: Liquibase und Dropwizard-Konfigurationsdateien. Für dropwizard wenn ich put config außerhalb von jarDropwizard Liquibase, führen db migrate.xml-Datei, die in Glas ist

java -jar myapp.jar server config.yml 

es ok ist, App. strated, macht aber liquibase Migration nicht ausgeführt, welche configs ich

<plugin> 
       <groupId>org.liquibase</groupId> 
       <artifactId>liquibase-maven-plugin</artifactId> 
       <version>3.5.0</version> 
       <configuration> 
        <changeLogFile> 
         ${basedir}/src/main/resources/migrations.xml 
        </changeLogFile> 
        <driver>com.mysql.jdbc.Driver</driver> 
        <url>jdbc:mysql://localhost:3306/twitterdb</url> 
        <username>root</username> 
        <password>root</password> 
       </configuration> 
       <executions> 
        <execution> 
         <phase>process-resources</phase> 
         <goals> 
          <goal>update</goal> 
         </goals> 
        </execution> 
       </executions> 
      </plugin> 

ich heruntergeladen liquibase in pom.xml haben, extrahiert, liquibase Hause als ENV eingestellt.

jetzt versuche ich

java -jar liquibase/liquibase.jar --driver=com.mysql.jdbc.Driver --changeLogFile=migratedb.xml --url="jdbc:mysql://localhost:3306/twitterDB" --username=root --password=root update . 

aber in diesem Fall zu liquibase laufen nicht MySQL-Treiber finden.

Grundsätzlich möchte ich Projekt starten mit Configs-Dateien, die in Jar ist.

Irgendwelche Vorschläge?

Antwort

1

fügen Sie den Classpath auf das Verzeichnis gesetzt, wo der Treiber installiert ist

--classpath=<value> Classpath containing migration files and JDBC Driver. 
+0

Ich tat es: java -jar liquibase/liquibase.jar --classpath = liquibase/mysql-connector-java-5.1.32- bin.jar --treiber = com.mysql.jdbc.Driver --changeLogFile = liquibase/migrate.xml --url = "jdbc: mysql: // localhost: 3306/twitetrdb" --username = root --password = root aktualisieren –