问题描述
IDEA SpringBoot 项目启动报错
org.apache.tomcat.jni.LibraryNotFoundError: Can’t load library: D:\work\app\IDEA\IntelliJ IDEA 2018.2.2\IdeaProjects\street-performance\bin\tcnative-1.dll, Can’t load library: D:\work\app\IDEA\IntelliJ IDEA 2018.2.2\IdeaProjects\street-performance\bin\libtcnative-1.dll, no tcnative-1 in java.library.path, no libtcnative-1 in java.library.path
原因分析
是因为 Tomcat 中的connector为了提高性能,采用了加载与操作系统绑定(非跨平台)的本地库的方式,比如Windows系统中就是.dll动态链接库。上述异常中找不到的两个.dll库文件,默认会去Tomcat的bin目录下去找,但是由于SpringBoot的Tomcat是嵌入式的,没有这两个.dll。
解决办法
通过 Everything 搜索,搜索到已安装的 Tomcat 里含有 tcnative-1.dll 文件
直接找到该文件并拷贝到 C:\Windows\System32
路径下即可