Saturday, November 30, 2013

hive 0.11.0 build error UNRESOLVED DEPENDENCIES build-common.xml:143: impossible to resolve dependencies:


ivy:resolve] 
[ivy:resolve] :: problems summary ::
[ivy:resolve] :::: WARNINGS
[ivy:resolve]         ::::::::::::::::::::::::::::::::::::::::::::::
[ivy:resolve]         ::          UNRESOLVED DEPENDENCIES         ::
[ivy:resolve]         ::::::::::::::::::::::::::::::::::::::::::::::
[ivy:resolve]         :: org.apache.hive#hive-metastore;0.11.0: configuration not public in org.apache.hive#hive-metastore;0.11.0: 'compile'. It was required from org.apache.hive#hive-exec;0.11.0 compile
[ivy:resolve]         ::::::::::::::::::::::::::::::::::::::::::::::
[ivy:resolve] 
[ivy:resolve] :: USE VERBOSE OR DEBUG MESSAGE LEVEL FOR MORE DETAILS

BUILD FAILED
/home/dc/bigtop-0.7.0/build/hive/rpm/BUILD/hive-0.11.0/src/build.xml:274: The following error occurred while executing this line:
/home/dc/bigtop-0.7.0/build/hive/rpm/BUILD/hive-0.11.0/src/build.xml:113: The following error occurred while executing this line:
/home/dc/bigtop-0.7.0/build/hive/rpm/BUILD/hive-0.11.0/src/build.xml:115: The following error occurred while executing this line:
/home/dc/bigtop-0.7.0/build/hive/rpm/BUILD/hive-0.11.0/src/build-common.xml:143: impossible to resolve dependencies:
    resolve failed - see output for details




This error message is worthless. Copy the hive-0.11.1 source code to a separate directory, unarvhive, cd into the hive-0.11/src directory and run ant -verbose.

You should see something like this when the build fails:



[ivy:resolve]     resolve done (445ms resolve - 32ms download)
[ivy:resolve]
[ivy:resolve] :: problems summary ::
[ivy:resolve] :::: WARNINGS
[ivy:resolve]         ::::::::::::::::::::::::::::::::::::::::::::::
[ivy:resolve]         ::          UNRESOLVED DEPENDENCIES         ::
[ivy:resolve]         ::::::::::::::::::::::::::::::::::::::::::::::
[ivy:resolve]         :: org.apache.hive#hive-metastore;0.11.0: configuration not public in org.apache.hive#hive-metastore;0.11.0: 'compile'. It was required from org.apache.hive#hive-exec;0.11.0 compile
[ivy:resolve]         ::::::::::::::::::::::::::::::::::::::::::::::
[ivy:resolve]
[ivy:resolve] :: USE VERBOSE OR DEBUG MESSAGE LEVEL FOR MORE DETAILS
   [subant] Exiting /home/dc/bigtop-0.7.0/dl/tmphive/hive-0.11.0/src/contrib/build.xml.

BUILD FAILED
/home/dc/bigtop-0.7.0/dl/tmphive/hive-0.11.0/src/build.xml:274: The following error occurred while executing this line:
/home/dc/bigtop-0.7.0/dl/tmphive/hive-0.11.0/src/build.xml:113: The following error occurred while executing this line:
/home/dc/bigtop-0.7.0/dl/tmphive/hive-0.11.0/src/build.xml:115: The following error occurred while executing this line:
/home/dc/bigtop-0.7.0/dl/tmphive/hive-0.11.0/src/build-common.xml:143: impossible to resolve dependencies:
    resolve failed - see output for details
    at org.apache.ivy.ant.IvyResolve.doExecute(IvyResolve.java:251)
    at org.apache.ivy.ant.IvyTask.execute(IvyTask.java:277)
    at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
    at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
    at org.apache.tools.ant.Task.perform(Task.java:348)
    at org.apache.tools.ant.Target.execute(Target.java:435)
    at org.apache.tools.ant.Target.performTasks(Target.java:456)
    at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1393)
    at org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:38)
    at org.apache.tools.ant.Project.executeTargets(Project.java:1248)
    at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:440)
    at org.apache.tools.ant.taskdefs.SubAnt.execute(SubAnt.java:306)
    at org.apache.tools.ant.taskdefs.SubAnt.execute(SubAnt.java:221)
    at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
    at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
    at org.apache.tools.ant.Task.perform(Task.java:348)
    at org.apache.tools.ant.taskdefs.Sequential.execute(Sequential.java:68)
    at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
    at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
    at org.apache.tools.ant.Task.perform(Task.java:348)
    at org.apache.tools.ant.taskdefs.MacroInstance.execute(MacroInstance.java:396)
    at net.sf.antcontrib.logic.ForTask.doSequentialIteration(ForTask.java:259)
    at net.sf.antcontrib.logic.ForTask.doToken(ForTask.java:268)
    at net.sf.antcontrib.logic.ForTask.doTheTasks(ForTask.java:299)
    at net.sf.antcontrib.logic.ForTask.execute(ForTask.java:244)
    at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
    at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
    at org.apache.tools.ant.Task.perform(Task.java:348)
    at org.apache.tools.ant.taskdefs.Sequential.execute(Sequential.java:68)
    at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
    at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
    at org.apache.tools.ant.Task.perform(Task.java:348)
    at org.apache.tools.ant.taskdefs.MacroInstance.execute(MacroInstance.java:396)
    at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
    at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
    at org.apache.tools.ant.Task.perform(Task.java:348)
    at org.apache.tools.ant.Target.execute(Target.java:435)
    at org.apache.tools.ant.Target.performTasks(Target.java:456)
    at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1393)
    at org.apache.tools.ant.Project.executeTarget(Project.java:1364)
    at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
    at org.apache.tools.ant.Project.executeTargets(Project.java:1248)
    at org.apache.tools.ant.Main.runBuild(Main.java:851)
    at org.apache.tools.ant.Main.startAnt(Main.java:235)
    at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280)
    at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 5 minutes 59 seconds


OK a little more useful. Let's change the ivy configuration to public.


Fix:
go to the ivy2 repository under ~/.ivy2 under your home directory. Do an ls -al to show the hidden . directories.  This is similar to the .m2 maven repository. For the hive-metastore there is a configuration called compile which is set to private. Change it to public.

The screen shot below shows the ivy-0.11.0.xml file at /home/dc/.ivy2/cache/org.apache.hive/hive-metastore. Use a text editor to change the 4th line from the top from private to public. The screenshot shows the file after the change has been applied. Orginally the line ends with private.



The screen shot below shows the setting private changed to public. Change the conf name compile from private to public. 


to: 





1 comment:

  1. Thanks for the post!

    I've seen that building Bigtop trunk yesterday. Is there JIRA for that, didn't see one?

    ReplyDelete