更新到sql server表给出错误java.lang.NoClassDefFoundError:com / microsoft / sqlserver / jdbc / TDSWriter $ 1

问题描述 投票:0回答:1

当我在本地运行我的应用程序时,SQL Server表的更新工作正常。但是当我尝试在我们的linux服务器上运行jenkins上的部署版本时,它给出了错误“java.lang.NoClassDefFoundError:com / microsoft / sqlserver / jdbc / TDSWriter $ 1”。

我正在使用org.springframework.data.repository.save来更新表中的记录。

try{
    userRepository.save(personnel);
}catch (Exception e){
    String message = "There is an exception while updating userrecord in the database";
logger.error(message, e);
}

java.lang.NoClassDefFoundError:com / microsoft / sqlserver / jdbc / TDSWriter $ 1 com.microsoft.sqlserver.jdbc.TDSWriter.writeRPCByteArray(IOBuffer.java:4526)com.microsoft.sqlserver.jdbc.DTV $ SendByRPCOp.execute(dtv。 java:1158)com.microsoft.sqlserver.jdbc.DTV.executeOp(dtv.java:1311)com.microsoft.sqlserver.jdbc.DTV.sendByRPC(dtv.java:1503)

java sql sql-server jdbc spring-jdbc
1个回答
0
投票

我解决了这个问题。在部署应用程序的linux服务器上,我有多个版本的sqljdbc jar。只需要一个sql jdbc jar(sqljdbc42.jar)。所以删除其他sql jdbc jar已经解决了这个问题。它在我的本地工作,因为我的系统上没有多个版本。

© www.soinside.com 2019 - 2024. All rights reserved.