liquibase updateしたらjava.lang.NoClassDefFoundErrorが出た

こんにちは,しののめ(@Shinogasa)です.

 

お仕事で環境構築しててliquibaseなるものを使う機会がありました.

どうやらデータベースリファクタリングツールらしいですね.

Liquibase使い方(基本)メモ - Qiita
DBリファクタリングツール「LiquiBase」の基本的な使い方をひとめぐり。 環境 OS Windows7 64bit SP1 Java 1.7.0_55 データベース MySQL Ver 14.14 Di...

 

書いてあった手順書通りに実行したら怒られました.

$ liquibase update 
java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory 
        at liquibase.logging.core.Slf4JLoggerFactory.getLog(Slf4JLoggerFactory.java:9) 
        at liquibase.logging.LogService.getLog(LogService.java:39) 
        at liquibase.integration.commandline.Main.<clinit>(Main.java:67) 
Caused by: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory 
        at java.net.URLClassLoader.findClass(Unknown Source) 
        at java.lang.ClassLoader.loadClass(Unknown Source) 
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) 
        at java.lang.ClassLoader.loadClass(Unknown Source) 
        ... 3 more 
Exception in thread "main"

 

エラー解消するためにいろいろ調べたらslf4jが必要っぽいです.

  1.  ここからダウンロードして解凍.
  2. フォルダ内にあるslf4j-api-1.7.25.jarliquibase-3.5.5/libに格納
  3. これでエラー解消!

単純にファイルが足りなかったみたいですね.

下記参考にしました.

[CORE-3201] Command line missing required dependencies in 3.6.0 tarball - liquibase.jira.com

 

 

コメント

タイトルとURLをコピーしました