intellij 插件:在模块上添加 Jar 库
intellij plugin: add Jar library on module
我正在创建一个框架,并在 addSupport 方法中尝试添加对我的 jar 库的依赖。但是我当前的解决方案不起作用:( table 中确实出现了依赖项,但它无法访问 类,它在库检查器中以黄色突出显示。
WriteAction.run<RuntimeException> {
val myLib : VirtualFile = VirtualFileManager.getInstance()
.findFileByNioPath(Path.of("....jar"))!!
.copy(...)
val libraryTable = model.moduleLibraryTable
val library = libraryTable.createLibrary(myLib.name)
val libraryModel = library.modifiableModel
libraryModel.addRoot(myLib, OrderRootType.CLASSES)
libraryModel.commit()
}
如何正确的给模块添加库依赖?
我找到方法了,需要另外说明使用jar文件系统。也不需要 WriteAction 包装器。
val myLib : VirtualFile = VirtualFileManager.getInstance()
.findFileByNioPath(Path.of("....jar"))!!
.copy(...)
val libraryTable = model.moduleLibraryTable
val library = libraryTable.createLibrary(myLib.name)
val libraryModel = library.modifiableModel
libraryModel.addRoot(
JarFileSystem.getInstance().getJarRootForLocalFile(myLib)!!,
OrderRootType.CLASSES)
libraryModel.commit()
我正在创建一个框架,并在 addSupport 方法中尝试添加对我的 jar 库的依赖。但是我当前的解决方案不起作用:( table 中确实出现了依赖项,但它无法访问 类,它在库检查器中以黄色突出显示。
WriteAction.run<RuntimeException> {
val myLib : VirtualFile = VirtualFileManager.getInstance()
.findFileByNioPath(Path.of("....jar"))!!
.copy(...)
val libraryTable = model.moduleLibraryTable
val library = libraryTable.createLibrary(myLib.name)
val libraryModel = library.modifiableModel
libraryModel.addRoot(myLib, OrderRootType.CLASSES)
libraryModel.commit()
}
如何正确的给模块添加库依赖?
我找到方法了,需要另外说明使用jar文件系统。也不需要 WriteAction 包装器。
val myLib : VirtualFile = VirtualFileManager.getInstance()
.findFileByNioPath(Path.of("....jar"))!!
.copy(...)
val libraryTable = model.moduleLibraryTable
val library = libraryTable.createLibrary(myLib.name)
val libraryModel = library.modifiableModel
libraryModel.addRoot(
JarFileSystem.getInstance().getJarRootForLocalFile(myLib)!!,
OrderRootType.CLASSES)
libraryModel.commit()