java - Manifest.mf 和导入
问题描述
我有以下dynamodb.jar
结构,其中lib/
有一堆.jar
s。所有这些嵌套.jar
的 s 都是com.mparnisa.dynamodb.table
.
从另一个 IntelliJ 项目中,我尝试在其中实例化一个类dynamodb.jar
:
try {
File file = new File("<path>/dynamo.jar");
URL url = file.toURI().toURL();
URL[] urls = new URL[]{url};
ClassLoader urlClassLoader = new URLClassLoader(urls);
String resourceModelClassName = "com.mparnisa.dynamodb.table.ResourceModel";
Class<?> resourceModelClass = urlClassLoader.loadClass(resourceModelClassName);
Object resourceModel = resourceModelClass.newInstance(); // this works
String resourceHandlerClassName = "com.mparnisa.dynamodb.table.CreateHandler";
Class<?> resHandlerClazz = urlClassLoader.loadClass(resourceHandlerClassName);
try {
Object resourceHandlerInstance = resHandlerClazz.newInstance();
} catch (NoClassDefFoundError e) {
System.out.println(e.getMessage());
}
} catch (Exception e){
System.out.println(e.getMessage());
}
代码中断
java.lang.NoClassDefFoundError: com/amazonaws/AmazonServiceException
此类位于嵌套 JAR 之一中,import
由com.mparnisa.dynamodb.table.CreateHandler
.
我的问题:
- 我是否需要更改 MANIFEST.MF 中的任何内容
import
才能正确解决? - 是否
URLClassLoader
足够聪明地查看 MANIFEST.MF 的class-path
?
解决方案
推荐阅读
- .net-core - 有没有办法在没有旧密码的情况下使用身份框架在dotnet core中更改密码和电子邮件验证
- sql-server - 如何汇总测试结果相同的序列号列表
- node.js - 我希望覆盖 find 但同时使用原始版本
- c# - API 服务抱怨 HTTPS 请求缺少用户名和密码
- javascript - Node.js 和 node_modules 不是 whatwg-url 中的 TextEncoder
- amazon-dynamodb - Dynamodb - 使用多个条件查询 Sortkey
- intellij-idea - 在 WebStorm 中查看图像预览
- css - Tailwind 中的边框和间距
- python - 使用 Telethon API 获取所有频道成员列表的问题
- javascript - 带有输入字段的动态图章