springBoot 打war包 程序包com.sun.istack.internal不存在的问题及解决方案

 更新时间:2018年07月30日 17:15:29   作者:sky丶尕少  
这篇文章主要介绍了springBoot 打war包 程序包com.sun.istack.internal不存在的问题及解决方案,亲测试过可以,需要的朋友可以参考下

使用的是 idea - Lifecycle-package 的方式打包(maven)

确认  <packaging>war</packaging>

修改启动类:

(原启动类)

public class ExampleApplication {
  public static void main(String[] args) {
    SpringApplication.run(ExampleApplication.class, args);
  }
}

修改为:

public class ExampleApplication extends SpringBootServletInitializer {
  @Override
  protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
    return builder.sources(ExampleApplication.class);
  }
  public static void main(String[] args) {
    SpringApplication.run(ExampleApplication.class, args);
  }
}

(至此:即可打包war成功,其中可能需要移除内置tomcat服务,导入tomcat API,不过在这里测试过没有问题,所以不操作)

假若打包成功,恭喜你,可以不用看下面的了。。。

在这里只说明打war报,出现程序包找不到的情况,eg:com.sun.istack.internal,最常见于使用@NotNull(在未解决期间,偶尔还是可以打包成功的,这时候是完全懵逼的)

程序包使用的是jre下的工具rt.jar,导入相关的maven信息也不行。

或者添加系统依赖<scope>system</scope>也行不通:引用:http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html#System_Dependencies

下面介绍其他方式

添加plugin:maven-compiler-plugin

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-compiler-plugin</artifactId>
  <configuration>
    <source>${java.version}</source>
    <target>${java.version}</target>
    <compilerArgs>
      <arg>-Xlint:deprecation</arg>
    </compilerArgs>
    <compilerArguments>
      <bootclasspath>${java.home}\lib\rt.jar;${java.home}\lib\jce.jar</bootclasspath>
    </compilerArguments>
  </configuration>
</plugin>

总结

以上所述是小编给大家介绍的springBoot 打war包 程序包com.sun.istack.internal不存在的问题及解决方案,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • java实战之桌球小游戏

    java实战之桌球小游戏

    这篇文章主要为大家详细介绍了java实战之桌球小游戏,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-07-07
  • idea启动多个服务不显示Services或者RunDashboard窗口的处理方法

    idea启动多个服务不显示Services或者RunDashboard窗口的处理方法

    这篇文章主要介绍了idea启动多个服务不显示Services或者RunDashboard窗口,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-03-03
  • spring boot配合前端实现跨域请求访问

    spring boot配合前端实现跨域请求访问

    本篇文章主要介绍了spring boot配合前端实现跨域请求访问,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-04-04
  • Java sha1散列算法原理及代码实例

    Java sha1散列算法原理及代码实例

    这篇文章主要介绍了Java sha1散列算法原理及代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-09-09
  • SpringBoot中实现数据字典的示例代码

    SpringBoot中实现数据字典的示例代码

    这篇文章主要介绍了SpringBoot中实现数据字典的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • Java线程池实现带返回值的方式方法

    Java线程池实现带返回值的方式方法

    在Java中,线程池是一种重要的多线程处理方式,可以有效管理和重用线程,提高程序的性能和效率,有时候我们需要在多线程处理中获取线程的返回值,本文将介绍如何使用线程池实现带返回值的方式方法,需要的朋友可以参考下
    2024-09-09
  • 详解java动态代理模式

    详解java动态代理模式

    这篇文章主要为大家详细介绍了java动态代理模式,总结一下代理模式,以及jdk,cglib代理模式用法,来理解代理模式,感兴趣的小伙伴们可以参考一下
    2016-02-02
  • linux下用renameTo方法修改java web项目中文件夹名称的实例

    linux下用renameTo方法修改java web项目中文件夹名称的实例

    下面小编就为大家带来一篇linux下用renameTo方法修改java web项目中文件夹名称的实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-06-06
  • Maven打包上云的实现步骤

    Maven打包上云的实现步骤

    本文主要介绍了Maven打包上云的实现步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-07-07
  • maven项目中<scope>provided</scope>的作用及说明

    maven项目中<scope>provided</scope>的作用及说明

    这篇文章主要介绍了maven项目中<scope>provided</scope>的作用及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-12-12

最新评论