为什么葡萄抓住我没有要求的罐子?

时间:2016-01-21 00:33:24

标签: groovy jar apache-httpclient-4.x dependency-management grape

我想编写一个使用Apache HttpClient 4.1的简单Groovy脚本,因为我没有它的jar,我想用Grapes抓住它。到目前为止我在剧本中的所有内容都是......

SELECT   DateName( month , DateAdd( month , MONTH(AE.BookingTimeStamp ) , -1 ))   monthnames,
         count (BookingTimeStamp)  totCount
FROM     BookingsAEItems AE
WHERE    BookingTimeStamp BETWEEN '1/12/2015' AND '1/12/2016'
group by DateName( month , DateAdd( month , MONTH(AE.BookingTimeStamp ) , -1 ))
order by totCount

但是当我运行这个时,我得到了一个异常..

@Grab(group='org.apache.httpcomponents', module='httpclient', version='4.0')
import org.apache.http.impl.client.DefaultHttpClient;

当我只询问http客户端时,为什么Grapes得到公共记录?如果是因为后者需要前者,那么我是否需要自己明确地获取所有依赖的http客户端jar?我怎么会知道它们是什么?有没有办法告诉Grapes自己做这件事?

1 个答案:

答案 0 :(得分:5)

这是因为commons-logging是一个传递依赖,即org.apache.httpcomponents的依赖:httpclient。

您可能会遇到问题,因为您的本地maven仓库没有公共日志记录,也不知道如何(或未配置)查找它。