You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Nick Dimiduk (JIRA)" <ji...@apache.org> on 2013/07/09 18:59:50 UTC
[jira] [Commented] (HBASE-8200) Integration Test classes are not
part of the default HBase classpath. We should fix this or note workaround
in documentation
[ https://issues.apache.org/jira/browse/HBASE-8200?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13703497#comment-13703497 ]
Nick Dimiduk commented on HBASE-8200:
-------------------------------------
hbase-assembly seems like the correct place to put this. IIRC, the trick from HBASE-7971 was to ensure the destination of the cached_classpath.txt was not cleaned by a subsequent step in the build. Adding all the other modules as dependencies of hbase-assembly will force that module to go last, which I suspect is what you require.
nit: {{mvn clean package -DskipTests}} is sufficient; {{install}} not required.
The generated file does indeed contain the hbase-it tests jar, so I think you've solved it.
IntegrationTestImportTsv runs via bin/hbase.
+1
> Integration Test classes are not part of the default HBase classpath. We should fix this or note workaround in documentation
> ----------------------------------------------------------------------------------------------------------------------------
>
> Key: HBASE-8200
> URL: https://issues.apache.org/jira/browse/HBASE-8200
> Project: HBase
> Issue Type: Bug
> Components: test
> Environment: ubuntu
> Reporter: Aleksandr Shulman
> Assignee: Enis Soztutar
> Fix For: 0.98.0, 0.95.2
>
> Attachments: hbase-8200_v1.patch
>
>
> Expected behavior:
> Following the instructions here:
> http://hbase.apache.org/book/hbase.tests.html#integration.tests
> After pulling down the latest bits from trunk and running,
> > mvn clean compile test-compile package install assembly:assembly -DskipTests
> I should be able to run integration tests with the following command:
> > bin/hbase --config /path/to/configs org.apache.hadoop.hbase.IntegrationTestsDriver
> According to the documentation, this should kick off the tests.
> Observed behavior:
> Upon executing
> > bin/hbase --config /path/to/configs org.apache.hadoop.hbase.IntegrationTestsDriver
> I see the following:
> Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hadoop/hbase/IntegrationTestsDriver
> Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.hbase.IntegrationTestsDriver
> at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
> at java.security.AccessController.doPrivileged(Native Method)
> at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
> at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
> I can fix it by adding the following line to the hbase-env.sh file corresponding to the configs:
> export HBASE_CLASSPATH=/path/to/project/hbase/hbase-it/target/test-classes/
> This produces the correct output.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira