[ https://issues.apache.org/jira/browse/PIG-5199?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
liyunzhang_intel updated PIG-5199: ---------------------------------- Resolution: Fixed Status: Resolved (was: Patch Available) [~szita]: LGTM, commit to the spark branch. thanks for contribution. > exclude jline in spark dependency > --------------------------------- > > Key: PIG-5199 > URL: https://issues.apache.org/jira/browse/PIG-5199 > Project: Pig > Issue Type: Sub-task > Components: spark > Reporter: liyunzhang_intel > Assignee: liyunzhang_intel > Fix For: spark-branch > > Attachments: PIG-5199.1.patch, PIG-5199.patch > > > when i fix PIG-5197 and run TestGrunt, the exception is thrown > {code} > [ERROR] Terminal initialization failed; falling back to unsupported$ > 4220 java.lang.IncompatibleClassChangeError: Found class jline.Terminal, but > interface was expected$ > 4221 ^Iat jline.TerminalFactory.create(TerminalFactory.java:101)$ > 4222 ^Iat jline.TerminalFactory.get(TerminalFactory.java:159)$ > 4223 ^Iat jline.console.ConsoleReader.<init>(ConsoleReader.java:227)$ > 4224 ^Iat jline.console.ConsoleReader.<init>(ConsoleReader.java:219)$ > 4225 ^Iat jline.console.ConsoleReader.<init>(ConsoleReader.java:211)$ > 4226 ^Iat org.apache.pig.Main.run(Main.java:554)$ > 4227 ^Iat org.apache.pig.PigRunner.run(PigRunner.java:49)$ > 4228 ^Iat org.apache.pig.test.TestGrunt.testGruntUtf8(TestGrunt.java:1579)$ > 4229 ^Iat sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)$ > 4230 ^Iat > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)$ > 4231 ^Iat > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)$ > 4232 ^Iat java.lang.reflect.Method.invoke(Method.java:498)$ > 4233 ^Iat > org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)$ > 4234 ^Iat > org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)$ > 4235 ^Iat > org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)$ > 4236 ^Iat > org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)$ > 4237 ^Iat > org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)$ > 4238 ^Iat org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271)$ > 4239 ^Iat > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)$ > 4240 ^Iat > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)$ > 4241 ^Iat org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)$ > 4242 ^Iat org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)$ > 4243 ^Iat org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)$ > 4244 ^Iat org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)$ > {code} > i found this is because there are 2 jars about jline in different version > {code} > find -name jline*jar > ./build/ivy/lib/spark/jline-0.9.94.jar > ./build/ivy/lib/Pig/jline-2.11.jar > ./lib/spark/jline-0.9.94.jar > ./lib/jline-2.11.jar > {code} > we need to exclude jline-0.9.94 from spark dependency. -- This message was sent by Atlassian JIRA (v6.3.15#6346)