只在gwt编译中包含jar而不包含在WEB-INF / lib中

时间:2014-11-17 10:01:08

标签: java maven gwt slf4j

我想使用slf4j-gwt库https://github.com/FinamTrade/slf4j-gwt

但我只想把它包含在我的gwt编译中,而不是因为我遇到tomcat启动调用GWT.create的问题而构建的战争...

有一种简单的方法吗?我希望maven gwt编译器插件能够支持这一点,但我看不到它。

2 个答案:

答案 0 :(得分:2)

<scope>provided</scope><optional>true</optional>

没有一个人在语义上满足,但这就是Maven给我们的。

话虽如此,有很多原因可以解释为什么你应该将项目分成几个模块,一个模块只包含客户端代码并生成JavaScript和相关资源(通过GWT编译器),另一个模块只有服务器端依赖;这样你就不会冒险将客户端类或依赖项放入WAR中 有关它的更多信息,请参阅http://blog.ltgt.net/announcing-gwt-maven-archetypes-project/和示例项目(以Maven原型的形式)。

答案 1 :(得分:1)

如果我理解正确,您可以在构建WAR时排除工件。像

这样的东西
<build>
  ...
  <plugin>
    <artifactId>maven-war-plugin</artifactId>
    <version>2.5</version>
    ...
    <configuration>
      <packagingExcludes>
         WEB-INF/lib/slf4j-gwt-*.jar
      </packagingExcludes>
    </configuration>
  </plugin>
  ...
</build>

应该有用。

干杯,