在java项目中使用maven会减少战争的规模吗?
目前我们有JavaWeb项目,我们没有使用maven。当我们创建war文件时,它的大小太大了。我想减小这个war文件的大小 我认为这么大的战争规模是因为图书馆(几乎占总数的50%)在java项目中使用maven会减少战争的规模吗?,java,maven,size,war,web-deployment,Java,Maven,Size,War,Web Deployment,目前我们有JavaWeb项目,我们没有使用maven。当我们创建war文件时,它的大小太大了。我想减小这个war文件的大小 我认为这么大的战争规模是因为图书馆(几乎占总数的50%) 因此,如果我们使用MAVEN,那么我们的WAR文件大小可能会减小。使用MAVEN不一定会减小您的WAR大小。它可能会帮助您消除不再需要的可传递依赖JAR文件,但这只适用于您有这种不必要的依赖关系的情况 话虽如此,Maven“Shade”插件可以配置为将多个组件JAR组合成一个JAR。。。并从实际未使用的依赖JAR中删
因此,如果我们使用MAVEN,那么我们的WAR文件大小可能会减小。使用MAVEN不一定会减小您的WAR大小。它可能会帮助您消除不再需要的可传递依赖JAR文件,但这只适用于您有这种不必要的依赖关系的情况 话虽如此,Maven“Shade”插件可以配置为将多个组件JAR组合成一个JAR。。。并从实际未使用的依赖JAR中删除类。查找shade插件的
minimizeJar
config参数
参考:
我很好奇为什么战争文件的大小是一个问题。web容器JVM将只加载webapp实际使用的类。其他类不会被加载,也不会使用大量JVM内存。当然,一个臃肿的WAR文件使用的磁盘空间比需要的要多,但在一个典型的web服务器平台上,磁盘空间很便宜。根据我们在问题下的评论对话:
- 扔掉无用的libs即可16小时前
- 为什么war文件的大小对您来说是个问题?-16小时前
- 您是否为您的集装箱罐使用“提供”范围16小时前
- @Maksym实际上我们需要在第二周到第三周频繁更新war文件,而实际上客户端服务器位于第三到第四个位置,所以当互联网上传速度较慢时,下载需要花费大量的时间。因此,如果大小减小,那么这将很快完成–murtaza.webdev 1小时前
- @Maksym“提供”范围编号–murtaza.webdev 1小时前
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>${servlet-api-version}</version>
<scope>provided</scope>
</dependency>
javax.servlet
servlet api
${servlet api版本}
假如
扔掉无用的库就行了。为什么war文件的大小对你来说是个问题?你是否为你的容器罐使用“提供的”范围?@Maksym实际上我们需要在第二周到第三周频繁更新war文件,而实际上客户端服务器位于三四个位置,所以当互联网上传速度缓慢时,下载需要花费大量时间。因此,如果尺寸减小,那么这将完成speedily@Maksym“提供”范围编号。