私は比較的Javaの& mavenに新しいので、自分のやり方を知るために、私は学習の手段としてプロジェクトを行うことにしました。 Javaを取得する依存関係が正しく設定されています
は、私はかなり一般的なスタック選ん:- のJava(注釈付き)1.6
- 休止状態(注釈付き)
- 春
- のJUnit 4
- Tomcatを
- のOracle XE/In-mem hsqldb
私が経験した最大の問題の1つは、安定した環境を得るためにjarバージョンを正しく組み合わせていることです。 2ヶ月後に私はstill fighting withの問題です。
かなり頻繁に私はnoSuchMethod例外またはclassNotFound例外がスローされ、それがSpringモジュールA x.x.xがHibernateモジュールB y.y.yと互換性がないことが判明します。また、普通のように、スプリングモジュールA xxxはスプリングモジュールB yyyと互換性がありません。
クリーンスレートからの起動には、バージョン依存性は最小限に抑えられるはずです。しかしそれはそうではありません。
私は、mavenを使用するとこのプロセスが簡素化されると思いますが、疑いはありません。
しかし、それは確かに痛みから遠いです。私は、モジュールAが特定のバージョンのモジュールBを必要とし、それが行のどこかに強制され、certinalyが単に "noSuchMethod"というより意味のあるメッセージを提供すると思っていました。
さらに、私がこれらの問題を発見する唯一の方法は、新しいメソッド呼び出しを試み、恐ろしいnoSuchMethodエラーを取得し、グーグルで開始することだと思われます。
私はここにある道に沿って、自分が必要としていた以上のことを自分で難しくしていたことを忘れましたか?
参考までに、私のPOMの依存関係のセクションはここにあります...あなたが何かhorrendously非標準に気づいたら、私に教えてください!
<dependencies>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.5.6</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.5.6</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.4</version>
</dependency>
<dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
<version>2.3</version>
</dependency>
<dependency>
<groupId>ojdbc</groupId>
<artifactId>ojdbc</artifactId>
<version>14</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-io</artifactId>
<version>1.3.2</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>1.4</version>
</dependency>
<dependency><!-- java bytecode processor -->
<groupId>javassist</groupId>
<artifactId>javassist</artifactId>
<version>3.8.0.GA</version>
</dependency>
<dependency>
<groupId>commons-dbcp</groupId>
<artifactId>commons-dbcp</artifactId>
<version>1.2.1</version>
</dependency>
<dependency>
<groupId>hsqldb</groupId>
<artifactId>hsqldb</artifactId>
<version>1.8.0.7</version>
</dependency>
<dependency>
<groupId>org.dbunit</groupId>
<artifactId>dbunit</artifactId>
<version>2.4.4</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring</artifactId>
<version>2.5.6</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>2.5.6</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-orm</artifactId>
<version>2.5.6</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-annotations</artifactId>
<version>3.4.0.GA</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-commons-annotations</artifactId>
<version>3.3.0.ga</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>3.3.1.GA</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>3.1.0.GA</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>3.4.0.GA</version>
</dependency>
<dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
<version>2.3</version>
</dependency>
</dependencies>
Eclipseを使用している場合
マーティ
入手しているエラーの例をいくつか教えてもらえますか? –