Well as a means just in case anyone else happens to have this same issue
and stumbles upon this thread. Here is the solution. Add the following to
your pom.xml

<build>
 <pluginManagement>
<plugins>
<plugin>
 <artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
 </plugin>
</plugins>
</pluginManagement>
 </build>

As for the reason. It appears that the Ubuntu package of maven(3.0.5) is
somehow being forced to only use up to version 2.0.2 of the
maven-compiler-plugin. This appears to have issues properly resolving the
thrift dependencies after the shade relocation. Forcing it to a newer
version within the pom.xml appears to resolve these issues. To note
downloading maven 3.0.5 from Apache appears to not produce this issue and
in fact uses version 2.3.2 of the plugin. However I am at a loss as to why
the difference is and where to resolve it within the install.


On Tue, Aug 12, 2014 at 12:47 PM, NerdyNick <[email protected]> wrote:

> I'm working on switching over to 0.9.2 from 0.9.1 and something appears to
> have changed that is causing the maven builds now fail. Maven is failing
> with errors about thrift classes missing and not accessible.
>
> The missing classes appear to be a combo of the storm-core pom.xml shade
> plugin renaming all the org.apache.thrift packages to org.apache.thrift7.
> As well as the pom.xml distributed from maven central showing libthrift as
> "provided" vs "compiled'. Which is understandable with libthrift being
> packaged within storm-core in the first place.
>
> The other error I'm getting is with cannot access. This also is appearing
> to be fall out from renaming the package.
>
> [ERROR] location: class TServiceClient
> [ERROR]
> /storm-spring/src/main/java/storm/spring/utils/TopologyUtils.java:27:
> error: cannot access TServiceClient
> [ERROR] ClusterSummary summary = cl.getClusterInfo();
> [ERROR] ^
>
>
> The chunk of code in question is:
>
> NimbusClient client = NimbusClient.getConfiguredClient(conf);
> Client cl = client.getClient();
> ClusterSummary summary = cl.getClusterInfo();
>
> This chunk of code was borrowed from StormSubmitter as a way for me to
> handle submitting a topology via Java vs the storm python scripts. Allowing
> me to better automate submitting topologies and leverage Spring & Jenkins
> to do so.
>
> The version of maven I am using is 3.0.5 as provided from the Ubuntu
> package repos.
>
> Does anyone have any idea on how to work around this? or is this an issue
> with the storm-core packaging?
>



-- 
Nick Verbeck - NerdyNick
----------------------------------------------------
NerdyNick.com
Coloco.ubuntu-rocks.org

Reply via email to