zoukankan      html  css  js  c++  java
  • 如何在Idea中编译构建Spring Framework 5.x

    如何在Idea中编译构建Spring Framework 5.x

    1. 安装配置Gradle(略)

    2. 下载源码:git clone https://github.com/spring-projects/spring-framework.git

    3. 按照工程下import-into-idea.md文件的提示进行操作

      The following has been tested against IntelliJ IDEA 2016.2.2
      
      ## Steps
      
      _Within your locally cloned spring-framework working directory:_
      
      1. Precompile `spring-oxm` with `./gradlew :spring-oxm:compileTestJava`
      2. Import into IntelliJ (File -> New -> Project from Existing Sources -> Navigate to directory -> Select build.gradle)
      3. When prompted exclude the `spring-aspects` module (or after the import via File-> Project Structure -> Modules)
      4. Code away
      
      ## Known issues
      
      1. `spring-core` and `spring-oxm` should be pre-compiled due to repackaged dependencies.
      See `*RepackJar` tasks in the build and https://youtrack.jetbrains.com/issue/IDEA-160605).
      2. `spring-aspects` does not compile due to references to aspect types unknown to
      IntelliJ IDEA. See https://youtrack.jetbrains.com/issue/IDEA-64446 for details. In the meantime, the
      'spring-aspects' can be excluded from the project to avoid compilation errors.
      3. While JUnit tests pass from the command line with Gradle, some may fail when run from
      IntelliJ IDEA. Resolving this is a work in progress. If attempting to run all JUnit tests from within
      IntelliJ IDEA, you will likely need to set the following VM options to avoid out of memory errors:
          -XX:MaxPermSize=2048m -Xmx2048m -XX:MaxHeapSize=2048m
      4. If you invoke "Rebuild Project" in the IDE, you'll have to generate some test
      resources of the `spring-oxm` module again (`./gradlew :spring-oxm:compileTestJava`)    
      
      
      ## Tips
      
      In any case, please do not check in your own generated .iml, .ipr, or .iws files.
      You'll notice these files are already intentionally in .gitignore. The same policy goes for eclipse metadata.
      
      ## FAQ
      
      Q. What about IntelliJ IDEA's own [Gradle support](https://confluence.jetbrains.net/display/IDEADEV/Gradle+integration)?
      
      A. Keep an eye on https://youtrack.jetbrains.com/issue/IDEA-53476
      
      • 按照stepsKnown issues指示进行操作即可,第一次构建可能要下载大量依赖,可能需要花费一些时间,慢的可能需要一到俩小时,需要耐心等待。

      • 编译完spring-corespring-oxm之后,再去编译spring-context时候,你会发现报错了,有来自.gradle文件的报错,有因为xxx类找不到的报错,这里报出的任何错误,一律通过注释对应的代码进行解决。

        .gradle文件报错,将对应报错行的构建代码注释掉,xxx类找不到,将对xxx类的引用注释掉

      • 新增module进行测试

      Note: 由于spring-aspects的实现依赖了aspectj,需要另外引入,所以不调试spring-aspects模块内容的同学,可以直接把这个模块给移除掉。

    我这边构建一份最新的工程(2019-11-2 2:26)放在Github上供大家参考

  • 相关阅读:
    解决 Windows Server 2008 R2 上 Windows Update 无法失败,提示 8024402F
    【UWP】实现 FindAncestor 绑定
    实现在 .net 中使用 HttpClient 下载文件时显示进度
    【UWP】手动实现 WebAuthenticationBroker
    记录使用 Cake 进行构建并制作 nuget 包
    w筛选系数=(1+错次)/(1+总次)
    WZP身份溯源策略(World Zero Protection),宜分宜合、自主可控的实名认证体系
    WZP报文封装协议(Web Zip Protocol),安全可嵌套的传输协议
    WZP安全配置方案,针对通讯技术的安全措施
    WZP网络结构模型,对OSI参考模型和TCP/IP模型的改进
  • 原文地址:https://www.cnblogs.com/think-in-java/p/11780427.html
Copyright © 2011-2022 走看看