我正在尝试使用示例 Struts 2 + Spring + Hibernate integration example 来学习 Hibernate-Spring-Struts .
但在创建 pom.xml
后出现此错误:
Missing artifact javax.transaction:jta:jar:1.0.1B
我仅在创建 pom.xml
文件方面取得了进展,并进行了更改以包含最新的库。
这是我的 pom.xml
:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>S3HMaven</groupId>
<artifactId>S3HMaven</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>S3HMaven</name>
<url>http://maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>javax.transaction</groupId>
<artifactId>jta</artifactId>
<version>1.0.1B</version>
</dependency>
<!-- Struts 2 -->
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-core</artifactId>
<version>2.1.8</version>
</dependency>
<!-- Struts 2 + Spring plugins -->
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-spring-plugin</artifactId>
<version>2.3.15.2</version>
</dependency>
<!-- MySQL database driver -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.26</version>
</dependency>
<!-- Spring framework -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring</artifactId>
<version>2.5.6</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>2.5.6</version>
</dependency>
<!-- Hibernate core -->
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate</artifactId>
<version>3.2.7.ga</version>
</dependency>
<!-- Hibernate core library dependency start -->
<dependency>
<groupId>dom4j</groupId>
<artifactId>dom4j</artifactId>
<version>1.6.1</version>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.1.1</version>
</dependency>
<dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
<version>3.2.1</version>
</dependency>
<dependency>
<groupId>cglib</groupId>
<artifactId>cglib</artifactId>
<version>2.2</version>
</dependency>
<!-- Hibernate core library dependency end -->
<!-- Hibernate query library dependency start -->
<dependency>
<groupId>antlr</groupId>
<artifactId>antlr</artifactId>
<version>2.7.7</version>
</dependency>
<!-- Hibernate query library dependency end -->
</dependencies>
</project>
我尝试了对 javax.transation
的依赖和不依赖。没有区别。谁能告诉我我做错了什么?我应该怎么做才能摆脱它?
最佳答案
就我而言,我尝试了 mkyong 中的示例
jsf-2.0 spring hibernate integration example
当我遇到异常时,我搜索了很多我正在使用 spring sts suit 工具,并且使用 JDK 8 eclipse MARS 解决方案是
我将 pom 更改为 1.1 而不是 1.0.1B
<dependency>
<groupId>javax.transaction</groupId>
<artifactId>jta</artifactId>
<version>1.1</version>
</dependency>
如果它不能从 m2 repo 自动下载,你应该手动下载它(你可以在文件夹 C:\Users\pc1\.m2\repository\javax\transaction\jta\1.1\jta-1.1.jar
)
并检查项目属性中的 maven 依赖项,它不应该在 lib 选项卡中给您一个错误。
引用资料: reference 1 reference 2 reference 3 reference 4 reference 5
如果您使用本教程,解决此问题后可能会出现相关问题:
1- http://www.mkyong.com/web-development/the-web-xml-deployment-descriptor-examples/
2- http://jonathan.lalou.free.fr/?p=2026
3- Error creating bean with name 'sessionFactory' Unable to instantiate default tuplizer [org.hibernate.tuple.entity.PojoEntityTuplizer] Tomcat error: Not Found in ExternalContext as a Resource
关于java - 缺少工件 javax.transaction :jta:jar:1. 0.1B(问题不同,因为您可能会看到分辨率不同),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19086523/