Jeff Tang created RANGER-3523:
---------------------------------

             Summary: Ranger Presto plugin start throw NoClassFound Error
                 Key: RANGER-3523
                 URL: https://issues.apache.org/jira/browse/RANGER-3523
             Project: Ranger
          Issue Type: Bug
          Components: plugins
    Affects Versions: 2.0.0
         Environment: prestosql version:310
Ranger version:2.0.0
            Reporter: Jeff Tang


when installed & enable the presto plugin , start presto throw NoClassFound 
exception which point to Ranger RangerSystemAccessControlFactory:
2021-11-23T08:20:26.345Z ERROR main io.prestosql.server.Server 
javax/annotation/PostConstruct
java.lang.NoClassDefFoundError: javax/annotation/PostConstruct
 at 
io.airlift.bootstrap.LifeCycleMethods.addLifeCycleMethods(LifeCycleMethods.java:65)
 at io.airlift.bootstrap.LifeCycleMethods.<init>(LifeCycleMethods.java:39)
 at 
java.base/java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1705)
 at io.airlift.bootstrap.LifeCycleMethodsMap.get(LifeCycleMethodsMap.java:27)
 at 
io.airlift.bootstrap.LifeCycleModule.isLifeCycleClass(LifeCycleModule.java:88)
 at io.airlift.bootstrap.LifeCycleModule.access$000(LifeCycleModule.java:39)
 at 
io.airlift.bootstrap.LifeCycleModule$1.lambda$hear$0(LifeCycleModule.java:57)
 at 
com.google.inject.internal.MembersInjectorImpl.notifyListeners(MembersInjectorImpl.java:131)
 at 
com.google.inject.internal.MembersInjectorImpl.injectAndNotify(MembersInjectorImpl.java:117)
 at 
com.google.inject.internal.Initializer$InjectableReference.get(Initializer.java:245)
 at com.google.inject.internal.Initializer.injectAll(Initializer.java:140)
 at 
com.google.inject.internal.InternalInjectorCreator.injectDynamically(InternalInjectorCreator.java:176)
 at 
com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:109)
 at com.google.inject.Guice.createInjector(Guice.java:87)
 at io.airlift.bootstrap.Bootstrap.initialize(Bootstrap.java:240)
 at 
org.apache.ranger.authorization.presto.authorizer.RangerSystemAccessControlFactory.create(RangerSystemAccessControlFactory.java:53)

Ranger project's pom has contains the relevant jsr annotation dependence :
find ./ -name "*.jar"|xargs grep -i PostConstruct
Binary file 
./target/ranger-2.1.1-SNAPSHOT-presto-plugin/lib/javax.annotation-api-1.3.2.jar 
matches 



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to