115 votes

Artéfact manquant com.microsoft.sqlserver:sqljdbc4:jar:4.0

Je cherche à ajouter la dépendance du pilote MS SQL dans mon fichier POM.xml et voici la dépendance :

    com.microsoft.sqlserver
    sqljdbc4
    4.0

mais je reçois cette exception

Artifact manquant com.microsoft.sqlserver:sqljdbc4:jar:4.0

Je ne comprends vraiment pas le problème.

2voto

Jacek Grzelaczyk Points 703

Ajoutez simplement

       com.microsoft.sqlserver
       sqljdbc4
       4.0
       runtime

1voto

Ramunas Points 11

Pour un projet Maven autonome, j'ai généralement l'habitude d'installer toutes les dépendances externes sous forme de jar dans le référentiel du projet. Pour le pilote JDBC de SQL Server, vous pouvez faire ce qui suit :

  • téléchargez le pilote JDBC depuis https://www.microsoft.com/en-us/download/confirmation.aspx?id=11774
  • créez un dossier local-repo dans votre projet Maven
  • copiez temporairement le fichier sqljdbc42.jar dans le dossier local-repo
  • dans le dossier local-repo, exécutez la commande mvn deploy:deploy-file -Dfile=sqljdbc42.jar -DartifactId=sqljdbc42 -DgroupId=com.microsoft.sqlserver -DgeneratePom=true -Dpackaging=jar -Dversion=6.0.7507.100 -Durl=file://. pour déployer le JAR dans le référentiel local (stocké avec votre code dans le SCM)
  • le fichier sqljdbc42.jar et les fichiers téléchargés peuvent être supprimés
  • modifiez votre fichier pom.xml et ajoutez une référence au référentiel local du projet :

            parent-local-repository
            Parent Local repository
            default
            file://${basedir}/local-repo
    
                true
    
                true

Maintenant vous pouvez exécuter votre projet partout sans avoir besoin de configurations ou installations supplémentaires.

1voto

ROOP Points 11

Si vous rencontrez des problèmes lors de l'inclusion de la dépendance pour 6.1.0.jre7 à partir de la réponse de @nirmals dans https://stackoverflow.com/a/41149866/1570834, dans votre fichier pom avec commons-codec / azure-keyvault, je vous conseille d'utiliser ceci :

       com.microsoft.sqlserver
       mssql-jdbc
       6.2.2.jre7

0voto

David Mobile Points 1

Il n'est pas trop difficile. Je n'ai pas encore lu la licence. Cependant, j'ai prouvé que cela fonctionne. Vous pouvez copier le fichier jar sqljdbc4 dans un partage réseau ou un répertoire local. Votre build.gradle devrait ressembler à ceci :

apply plugin: 'java'
//apply plugin: 'maven'
//apply plugin: 'enhance'

sourceCompatibility = 1.8
version = '1.0'

//versions des librairies
def hibernateVersion='4.3.10.Final'
def microsoftSQLServerJDBCLibVersion='4.0'
def springVersion='2.5.6'

def log4jVersion='1.2.16'
def jbossejbapiVersion='3.0.0.GA'

repositories {
    mavenCentral()
    maven{url "file://Sharedir/releases"}
}

dependencies {
    testCompile group: 'junit', name: 'junit', version: '4.11'
    compile "org.hibernate:hibernate-core:$hibernateVersion"
    compile "com.microsoft.sqlserver:sqljdbc4:$microsoftSQLServerJDBCLibVersion"
}

task showMeCache << {
    configurations.compile.each { println it }
}

sous le répertoire sharedir/releases, j'ai un répertoire similaire à la structure maven qui est \sharedir\releases\com\microsoft\sqlserver\sqljdbc4\4.0\sqljdbc4-4.0.jar

bonne chance.

David Yen

0voto

Jacek Grzelaczyk Points 703

Vous pouvez utiliser un autre pilote

    net.sourceforge.jtds
    jtds
    1.3.1

et en xml

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X