googleads / googleads-java-lib

Google Ad Manager SOAP API Client Library for Java
Apache License 2.0
226 stars 360 forks source link

RateLimiter depends on log4j #140

Closed tsubaki7737 closed 6 years ago

tsubaki7737 commented 6 years ago

In README.md

Uses SLF4J logging facade, allowing you to plug in a concrete logging framework of your choice.

But in pom.xml

<artifactId>log4j</artifactId>
<artifactId>slf4j-log4j12</artifactId>

So I need to exclude them when build my project to use logback.

Should they be replaced by <artifactId>slf4j-api</artifactId> ?

nwbirnie commented 6 years ago

Hello and thanks for reporting this issue!

You are quite right, the dependencies should include slf4j-api rather than the log4j implementation. We'll aim to have this fixed in the next library release and apologies for the inconvenience.

In the meantime, a dependency exclusion will remove these from the dependent module's classpath, as you correctly stated. You should still get the slf4j-api dependency transitively via ads-lib. Additionally, I would suggest additionally declaring slf4j-api explicitly in the POM next to the exclusion.

I'll update this issue when we publish the next release so you know it's been fixed.

Best wishes,

Nick

nwbirnie commented 6 years ago

Thanks for the feedback! This is now available in Rate Limiter version 0.1.2.

https://github.com/googleads/googleads-java-lib/commit/6394ee76145d544667cb2b471d76bb9963354c10#diff-59a59d5a5628f4b8b9b7241664d8cd4c