[
https://issues.apache.org/jira/browse/JCLOUDS-1225?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15826925#comment-15826925
]
Ian Springer commented on JCLOUDS-1225:
---------------------------------------
Ok, thanks for clarifying. I'll give that a try. It's still some hoops to jump
through, but I agree it's much better than the forking option. Hopefully I'll
be able to configure the shade plugin to relocate all classes *except*
org.apache.jclouds, so I don't need to change my project's code to use shaded
jclouds imports. That is, something like:
{code}
<!-- Relocate all jclouds' deps, but not jclouds itself. -->
<configuration>
<relocations>
<relocation>
<shadedPattern>jclouds.shaded</shadedPattern>
<excludes>
<exclude>org.apache.jclouds.**</exclude>
</excludes>
</relocation>
</relocations>
</configuration>
{code}
After some brief googling, it looks like this will work. I'll post another
comment after I try it to let you know how it went.
> Guava 21 compatibility
> ----------------------
>
> Key: JCLOUDS-1225
> URL: https://issues.apache.org/jira/browse/JCLOUDS-1225
> Project: jclouds
> Issue Type: Improvement
> Components: jclouds-core
> Affects Versions: 2.0.0
> Reporter: Ian Springer
> Labels: guava
>
> The below classes use com.google.common.base.Objects.ToStringHelper, which
> has been deprecated since Guava 18, and has been removed in Guava 21. This
> makes it impossible to use jclouds in a project using Guava 21. Please either
> upgrade to Guava 18+ and switch to using
> com.google.common.base.MoreObjects.ToStringHelper, or drop the usage of
> ToStringHelper altogether. This will allow my project to upgrade to Guava 21
> without having to use a fork of jclouds.
> * org/jclouds/apis/internal/BaseApiMetadata.java
> * org/jclouds/domain/internal/LocationImpl.java
> * org/jclouds/domain/internal/MutableResourceMetadataImpl.java
> * org/jclouds/domain/internal/ResourceMetadataImpl.java
> * org/jclouds/http/HttpMessage.java
> * org/jclouds/http/HttpRequest.java
> * org/jclouds/http/HttpResponse.java
> * org/jclouds/internal/BaseView.java
> * org/jclouds/providers/internal/BaseProviderMetadata.java
> * org/jclouds/reflect/InvocationSuccess.java
> * org/jclouds/rest/internal/BaseHttpApiMetadata.java
> * org/jclouds/rest/suppliers/URIFromStringSupplier.java
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)