我正在为SBT创建自己的wro4j插件,因为我的项目有一些不能直接使用xsbt-wro4j-plugin实现的特殊需求。
我查看了xsbt- wro4j -plugin (here)的源代码和wro4j应用程序接口文档,以便深入了解文件创建过程,但我在这里有点困惑。据我所知,这个插件使用Mockito以某种方式产生必要的资源,但我不知道它是如何与wro4j本身合作的。如果我是对的,这整个Mockito的东西是一个黑客,所以我们可以使用SBT的缓存机制。
第一个问题是,我们是否可以在不失去缓存支持的情况下避免这种Mockito巫术。
问题#2:在wro4j中创建文件的责任是什么?我可以覆盖它吗?
发布于 2013-08-08 06:09:22
这不一定是您所有问题的答案,但解释了为什么xsbt wro4j插件(和wro4j-maven- plugin )使用mockito。
wro4j最初是作为运行时解决方案(使用HttpServletFilter)创建的,以最大限度地减少动态静态资源。因此,内部应用程序接口基于servlet-api (更具体地说是HttpServletRequest和HttpServletResponse对象)。后来,当需要构建时解决方案时,不需要更改框架的内部结构,而是应用了一种合适的变通方法:使用一种机制在非servlet环境(构建时)中将servlet-api存根。
我认为长期的方法是:使wro4j、servlet-api不可知,并允许构建时解决方案,如maven plugin或xsbt plugin,不需要使用这种变通方法。不幸的是,为了做到这一点,应该改变wro4j的内部结构,这将需要一个主要版本(与以前的版本不兼容)。考虑到这样做所需的工作量,这很可能会被推迟。
https://stackoverflow.com/questions/18033830
复制相似问题