2015-12-20 143 views
2

尽管Maven解决了依赖关系,并且它在我的项目设置中显示为模块(因此应该在类路径中),但IntelliJ不允许我导入com.microsoftIntelliJ无法找到从Maven的sqljdbc4.jar即使它解决?

enter image description here

外部依赖解析: 模块: enter image description here

POM文件中有这样的:

<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/maven-v4_0_0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 
    <groupId>com.arcologydesigns.rest</groupId> 
    <artifactId>ads-webapp</artifactId> 
    <packaging>war</packaging> 
    <version>0.0.1-SNAPSHOT</version> 
    <name>springexample Maven Webapp</name> 
    <url>http://maven.apache.org</url> 

    <properties> 
     <endorsed.dir>${project.build.directory}/endorsed</endorsed.dir> 
     <spring.version>4.0.5.RELEASE</spring.version> 
     <jdk.version>1.8</jdk.version> 
     <jackson.version>2.2.3</jackson.version> 
     <!--<sqlserver.version>4.2.6420.100</sqlserver.version>--> 
     <sqlserver.version>4</sqlserver.version> 
     <build.scm.revision>SCM_IDENTIFIER</build.scm.revision> 
     <build.number>BUILD_NUMBER</build.number> 
     <build.id>BUILD_ID</build.id> 
     <build.job.name>BUILD_JOB_NAME</build.job.name> 
    </properties> 

    <dependencies> 
     <dependency> 
      <groupId>junit</groupId> 
      <artifactId>junit</artifactId> 
      <version>3.8.1</version> 
      <scope>test</scope> 
     </dependency> 

     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-core</artifactId> 
      <version>${spring.version}</version> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-webmvc</artifactId> 
      <version>${spring.version}</version> 
     </dependency> 

     <dependency> 
      <groupId>com.microsoft.sqlserver</groupId> 
      <artifactId>sqljdbc4</artifactId> 
      <version>${sqlserver.version}</version> 
     </dependency> 

     <dependency> 
      <groupId>org.json</groupId> 
      <artifactId>json</artifactId> 
      <version>20120521</version> 
     </dependency> 

    </dependencies> 
    <build> 
     <finalName>ads-webapp</finalName> 
    </build> 
</project> 

我用下面安装了sqljdbc驱动程序(这是我从MSDN下载) Maven:http://techmajik.com/2014/04/24/how-to-setup-maven-dependency-for-microsoft-sql-server/

回答

1

尝试添加它directtly到Maven仓库这样的:

mvn install:install-file -Dfile=sqljdbc4.jar -Dpackaging=jar -DgroupId=com.microsoft.sqlserver -DartifactId=sqljdbc4 -Dversion=4.0 

,然后添加到您的pom.xml

<dependency> 
<groupId>com.microsoft.sqlserver</groupId> 
<artifactId>sqljdbc4</artifactId> 
<version>4.0</version> 

更多detailes你可以阅读这个话题:

http://claude.betancourt.us/add-microsoft-sql-jdbc-driver-to-maven/

您需要这样做,因为SQL Server驱动程序不是包含在Maven仓库中 - 你需要自己安装它。

+1

该链接不再有效。搜索“sqljdbc4”并显示Microsoft下载页面。解压缩下载,然后运行maven命令。 – scottheckel

0

您可以直接使用下面的依赖:

<dependency> 
<groupId>com.microsoft.sqlserver</groupId> 
<artifactId>mssql-jdbc</artifactId> 
<version>6.1.0.jre8</version> </dependency> 
0

老sqljdbc驱动器(V 4.0)jar文件可在Maven的回购协议: https://mvnrepository.com/artifact/com.microsoft.sqlserver/sqljdbc4/4.0

下载和使用命令进行安装通过照顾user4198625提到

  • 确保行家(MVN)在您的PATH
  • JAVA_HOME已在您的env变量(适用于Windows)中正确定义。如果您正在运行mvn批处理文件,这尤其重要。
  • 要使命令按原样工作,需要从jar文件所在的目录执行它。
相关问题