나는 비교적 새로운 Java & maven에 익숙하다. 그래서 내 길을 알기 위해 나는 학습을위한 수단으로 프로젝트를하기로 결정했다. Java 의존 항생 권리가 바로
나는 꽤 일반적인 스택 포착 :- 자바 (주석) 1.6
- 최대 절전 모드 (주석)
- 봄
- 의 JUnit 4
- Tomcat을
- 오라클 XE/In-mem hsqldb
내가 경험 한 가장 큰 문제점 중 하나는 안정된 환경을 얻으려면 jar 버전의 올바른 조합을 얻는 것입니다. 두 달 후에 나는 still fighting with의 문제입니다.
꽤 자주 예외가 발생하고 Spring 모듈 A x.x.x는 Hibernate 모듈 B y.y.y와 호환되지 않습니다. 또는 심지어 마찬가지로 일반적으로 스프링 모듈 Axxx는 스프링 모듈 BYyy와 호환되지 않습니다.
클린 슬레이트에서 시작하는 것이 예상됩니다. 버전 종속성은 최소화해야합니다. 최신 버전을 잡으면 모든 것이 작동합니다. . 그러나 그것은 사실이 아니었다.
maven을 사용하면이 프로세스가 단순 해지고 의심의 여지가 없습니다.
하지만 확실히 고통스럽지 않습니다. 나는 모듈 A가 모듈 B의 특정 버전을 요구한다면, 그것은 라인을 따라 어딘가에 시행되어야하고, certinaly는 단지 "noSuchMethod"라는 의미있는 메시지를 제공 할 것이라고 생각했을 것이다.
또한 이러한 문제를 발견하는 유일한 방법은 새로운 메소드 호출을 시도하고, 두려운 noSuchMethod 오류를 받고, 인터넷 검색을 시작하는 것입니다.
내가 필요로하는 것보다 나 자신을 더 어렵게 만든 길을 여기에 놓친 적이 있습니까?
참고로, 여기 내 POM의 종속성 섹션이 있습니다 ... 흠 잡을 데가없는 비표준이 있으면 알려주십시오!
<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>
감사 마티
오류의 예를 몇 가지 제공 할 수 있습니까? –