[ 
https://issues.apache.org/jira/browse/CASSANDRA-2549?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13025351#comment-13025351
 ] 

Eric Evans commented on CASSANDRA-2549:
---------------------------------------

I probably shouldn't have said "If it needs to be packaged, it's something that 
would get its own package.", because I don't think it should (not yet at least, 
and not like this).

For one thing, the cql jar depends on more than the apache-cassandra-thrift 
jar; I'm not sure what your process was for testing, but it won't work like 
this.

Secondly, those dependencies (the ones between jars) will eventually be sorted, 
but then you're faced with the dependency on Thrift.  Our bundling of a private 
copy of Thrift is already something that brings shame to my ancestors, breaking 
that out into its own package is going to end in someone being reincarnated as 
a lemur, or a muskrat, or as the exhaust system of a 1997 Land Rover.  I'll 
have no part in it.

> Start up of 0.8-beta1 on Ubuntu 
> --------------------------------
>
>                 Key: CASSANDRA-2549
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2549
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Packaging
>    Affects Versions: 0.8 beta 1
>         Environment: Linux home.broadley.org.nz 2.6.32-29-generic-pae 
> #58-Ubuntu SMP Fri Feb 11 19:15:25 UTC 2011 i686 GNU/Linux
>            Reporter: Drew Broadley
>              Labels: start
>             Fix For: 0.8.0
>
>         Attachments: cassandra-0.8.0beta1-debian-package.patch, 
> cassandra_multiple_package_v2.patch, cassandra_multiple_package_v3.patch
>
>
> root@home:/home/drew# cassandra -f
>  INFO 14:06:03,261 Logging initialized
>  INFO 14:06:03,323 Heap size: 1543831552/1543831552
>  INFO 14:06:03,332 JNA not found. Native methods will be disabled.
>  INFO 14:06:03,379 Loading settings from file:/etc/cassandra/cassandra.yaml
>  INFO 14:06:03,899 DiskAccessMode 'auto' determined to be standard, 
> indexAccessMode is standard
> ERROR 14:06:04,028 Exception encountered during startup.
> java.lang.NoClassDefFoundError: 
> org/apache/cassandra/thrift/UnavailableException
>       at java.lang.Class.getDeclaredMethods0(Native Method)
>       at java.lang.Class.privateGetDeclaredMethods(Class.java:2444)
>       at java.lang.Class.privateGetPublicMethods(Class.java:2564)
>       at java.lang.Class.getMethods(Class.java:1427)
>       at 
> com.sun.jmx.mbeanserver.MBeanAnalyzer.initMaps(MBeanAnalyzer.java:126)
>       at com.sun.jmx.mbeanserver.MBeanAnalyzer.<init>(MBeanAnalyzer.java:116)
>       at 
> com.sun.jmx.mbeanserver.MBeanAnalyzer.analyzer(MBeanAnalyzer.java:104)
>       at 
> com.sun.jmx.mbeanserver.StandardMBeanIntrospector.getAnalyzer(StandardMBeanIntrospector.java:66)
>       at 
> com.sun.jmx.mbeanserver.MBeanIntrospector.getPerInterface(MBeanIntrospector.java:181)
>       at com.sun.jmx.mbeanserver.MBeanSupport.<init>(MBeanSupport.java:136)
>       at 
> com.sun.jmx.mbeanserver.StandardMBeanSupport.<init>(StandardMBeanSupport.java:64)
>       at 
> com.sun.jmx.mbeanserver.Introspector.makeDynamicMBean(Introspector.java:174)
>       at 
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:936)
>       at 
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:330)
>       at 
> com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:516)
>       at 
> org.apache.cassandra.service.StorageService.<init>(StorageService.java:231)
>       at 
> org.apache.cassandra.service.StorageService.<clinit>(StorageService.java:171)
>       at 
> org.apache.cassandra.locator.DynamicEndpointSnitch.<init>(DynamicEndpointSnitch.java:78)
>       at 
> org.apache.cassandra.config.DatabaseDescriptor.createEndpointSnitch(DatabaseDescriptor.java:429)
>       at 
> org.apache.cassandra.config.DatabaseDescriptor.<clinit>(DatabaseDescriptor.java:294)
>       at 
> org.apache.cassandra.service.AbstractCassandraDaemon.setup(AbstractCassandraDaemon.java:98)
>       at 
> org.apache.cassandra.service.AbstractCassandraDaemon.activate(AbstractCassandraDaemon.java:314)
>       at 
> org.apache.cassandra.thrift.CassandraDaemon.main(CassandraDaemon.java:80)
> Caused by: java.lang.ClassNotFoundException: 
> org.apache.cassandra.thrift.UnavailableException
>       at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
>       at java.security.AccessController.doPrivileged(Native Method)
>       at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
>       at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
>       at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
>       at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
>       ... 23 more
> Exception encountered during startup.
> java.lang.NoClassDefFoundError: 
> org/apache/cassandra/thrift/UnavailableException
>       at java.lang.Class.getDeclaredMethods0(Native Method)
>       at java.lang.Class.privateGetDeclaredMethods(Class.java:2444)
>       at java.lang.Class.privateGetPublicMethods(Class.java:2564)
>       at java.lang.Class.getMethods(Class.java:1427)
>       at 
> com.sun.jmx.mbeanserver.MBeanAnalyzer.initMaps(MBeanAnalyzer.java:126)
>       at com.sun.jmx.mbeanserver.MBeanAnalyzer.<init>(MBeanAnalyzer.java:116)
>       at 
> com.sun.jmx.mbeanserver.MBeanAnalyzer.analyzer(MBeanAnalyzer.java:104)
>       at 
> com.sun.jmx.mbeanserver.StandardMBeanIntrospector.getAnalyzer(StandardMBeanIntrospector.java:66)
>       at 
> com.sun.jmx.mbeanserver.MBeanIntrospector.getPerInterface(MBeanIntrospector.java:181)
>       at com.sun.jmx.mbeanserver.MBeanSupport.<init>(MBeanSupport.java:136)
>       at 
> com.sun.jmx.mbeanserver.StandardMBeanSupport.<init>(StandardMBeanSupport.java:64)
>       at 
> com.sun.jmx.mbeanserver.Introspector.makeDynamicMBean(Introspector.java:174)
>       at 
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:936)
>       at 
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:330)
>       at 
> com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:516)
>       at 
> org.apache.cassandra.service.StorageService.<init>(StorageService.java:231)
>       at 
> org.apache.cassandra.service.StorageService.<clinit>(StorageService.java:171)
>       at 
> org.apache.cassandra.locator.DynamicEndpointSnitch.<init>(DynamicEndpointSnitch.java:78)
>       at 
> org.apache.cassandra.config.DatabaseDescriptor.createEndpointSnitch(DatabaseDescriptor.java:429)
>       at 
> org.apache.cassandra.config.DatabaseDescriptor.<clinit>(DatabaseDescriptor.java:294)
>       at 
> org.apache.cassandra.service.AbstractCassandraDaemon.setup(AbstractCassandraDaemon.java:98)
>       at 
> org.apache.cassandra.service.AbstractCassandraDaemon.activate(AbstractCassandraDaemon.java:314)
>       at 
> org.apache.cassandra.thrift.CassandraDaemon.main(CassandraDaemon.java:80)
> Caused by: java.lang.ClassNotFoundException: 
> org.apache.cassandra.thrift.UnavailableException
>       at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
>       at java.security.AccessController.doPrivileged(Native Method)
>       at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
>       at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
>       at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
>       at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
>       ... 23 more

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to