NoClassDefFoundError when 运行 本地测试仅包含 POM 中的 tenant-scp-neo
NoClassDefFoundError when running local tests with only tenant-scp-neo included in POM
受此启发blog entry,我尝试在经典 SAP Neo SCP 上为我们现有的应用程序实施多租户。
我添加了依赖
<dependency>
<groupId>com.sap.cloud.s4hana.cloudplatform</groupId>
<artifactId>tenant-scp-neo</artifactId>
<version>1.9.5</version>
</dependency>
到我的 POM 并通过
在测试程序中访问租户
String tenantId = TenantAccessor.getCurrentTenant().getTenantId();
然后,我得到了这个错误
java.lang.NoClassDefFoundError: com/google/common/collect/Multiset
at com.sap.cloud.sdk.cloudplatform.monitoring.ExceptionMonitor.<init>(ExceptionMonitor.java:30) ~[core-1.9.5.jar:na]
at com.sap.cloud.sdk.cloudplatform.monitoring.ExceptionMonitor.<clinit>(ExceptionMonitor.java:28) ~[core-1.9.5.jar:na]
at com.sap.cloud.sdk.cloudplatform.logging.CloudLoggerFactory$CloudLogger.<init>(CloudLoggerFactory.java:67) ~[core-1.9.5.jar:na]
at com.sap.cloud.sdk.cloudplatform.logging.CloudLoggerFactory$CloudLogger.<init>(CloudLoggerFactory.java:47) ~[core-1.9.5.jar:na]
at com.sap.cloud.sdk.cloudplatform.logging.CloudLoggerFactory.getLogger(CloudLoggerFactory.java:19) ~[core-1.9.5.jar:na]
at com.sap.cloud.sdk.cloudplatform.tenant.ScpNeoTenantFacade.<clinit>(ScpNeoTenantFacade.java:21) ~[tenant-scp-neo-1.9.5.jar:na]
我该如何解决这个问题?
经过一些调查,问题似乎出在 Maven 存储库(在 .m2
文件夹中)中的一个损坏的 guava jar 文件。删除相应的文件夹并让 Maven 再次下载它们解决了这个问题。
受此启发blog entry,我尝试在经典 SAP Neo SCP 上为我们现有的应用程序实施多租户。
我添加了依赖
<dependency>
<groupId>com.sap.cloud.s4hana.cloudplatform</groupId>
<artifactId>tenant-scp-neo</artifactId>
<version>1.9.5</version>
</dependency>
到我的 POM 并通过
在测试程序中访问租户String tenantId = TenantAccessor.getCurrentTenant().getTenantId();
然后,我得到了这个错误
java.lang.NoClassDefFoundError: com/google/common/collect/Multiset
at com.sap.cloud.sdk.cloudplatform.monitoring.ExceptionMonitor.<init>(ExceptionMonitor.java:30) ~[core-1.9.5.jar:na]
at com.sap.cloud.sdk.cloudplatform.monitoring.ExceptionMonitor.<clinit>(ExceptionMonitor.java:28) ~[core-1.9.5.jar:na]
at com.sap.cloud.sdk.cloudplatform.logging.CloudLoggerFactory$CloudLogger.<init>(CloudLoggerFactory.java:67) ~[core-1.9.5.jar:na]
at com.sap.cloud.sdk.cloudplatform.logging.CloudLoggerFactory$CloudLogger.<init>(CloudLoggerFactory.java:47) ~[core-1.9.5.jar:na]
at com.sap.cloud.sdk.cloudplatform.logging.CloudLoggerFactory.getLogger(CloudLoggerFactory.java:19) ~[core-1.9.5.jar:na]
at com.sap.cloud.sdk.cloudplatform.tenant.ScpNeoTenantFacade.<clinit>(ScpNeoTenantFacade.java:21) ~[tenant-scp-neo-1.9.5.jar:na]
我该如何解决这个问题?
经过一些调查,问题似乎出在 Maven 存储库(在 .m2
文件夹中)中的一个损坏的 guava jar 文件。删除相应的文件夹并让 Maven 再次下载它们解决了这个问题。