Spring 安全性中的 Eclipse(Spring 工具套件)错误
Errors in Eclipse (Spring Tool Suite) in Spring Security
我正在尝试成为 Spring 安全的贡献者,但进展并不顺利。尽管 .gradle 项目的 build/compilation 成功了,但我在 Spring Tool Suite 中收到 validation 错误。错误显示在 Eclipse 的 "Markers" 视图中。这是我到目前为止所做的。
- 在 Github
上分叉 Spring 安全主分支
- 为我的分叉分支复制了 https URL
- 在 Spring 工具套件中,导入->Git->项目来自 Git->克隆 URI
- 在 #3 Spring 之后,Tool Suite 从 Git
下载了项目
- Spring Tool Suite 提示我要创建什么类型的项目
- 我选择了"Import as a general project"
- 我从我的工作区中删除了该项目(但没有在磁盘上删除它)
- 我使用 Import->Gradle->Gradle 项目和推荐设置导入项目
一切构建完成后,我在 Spring Tool Suite 中收到以下错误:
该错误伴随着几条消息,包括以下内容:
- 切入点无法解析为类型
- 方法 aspectOf() 未定义类型 ...
- 方法 proceed() 未定义类型 ...
如果我打开 Eclipse .project 文件并添加以下内容,则可以修复此错误(使用丑陋的 hack):
<buildSpec>
<buildCommand>
<name>org.eclipse.ajdt.core.ajbuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.ajdt.ui.ajnature</nature>
</natures>
问题
如何正确设置我的开发环境?我应该研究什么来弄清楚为什么会出现这些错误?我目前正在研究 gradle/maven 配置与 Eclipse .project 文件的关系,但我还没有深入研究。
我发现这个 walkthrough 关于如何通过 gradle 将 spring 项目引入 Eclipse。它实际上看起来像是基于 Spring 安全性,这可能会为您创建一个很好的流程。
我的猜测是,eclipse 没有默认为其 dependency management 使用 gradle 配置。
以下是对我有用的(以及我与 Rob Winch 讨论的内容):
从 https://spring.io/tools/sts/all 下载 STS 3.7.2(不是最新的 3.7.3,导入 spring-安全项目时有一些问题)。有一个 link 到以前版本的 STS。在那里你找到 STS 3.7.2.
从这里安装 Groovy-Eclipse:http://dist.springsource.org/snapshot/GRECLIPSE/e4.5/
从这里安装 Gradle STS 工具:
http://download.springsource.com/release/TOOLS/update/3.7.2.RELEASE/e4.5
安装上述所有组件后,使用 STS Gradle 支持导入 spring-安全项目 ("Import -> Gradle -> ...")
这可能需要一段时间,但在下载必要的工件后,所有这些项目都应该出现在您的工作区中。 "aspects" 上面有一个错误标记。右键单击该项目,转到 Groovy 上下文菜单条目,然后执行 "remove Groovy nature"(或类似的操作)。这删除了该项目的 groovy 工具并且编译正常。
完成所有这些步骤后,我得到了一个工作区,其中所有这些项目都可以正常编译。但看起来我们 could/should 将来可能会使用 Eclipse Oomph 安装文件来简化此过程。但那是未来的故事。
希望对您有所帮助!!!
我正在尝试成为 Spring 安全的贡献者,但进展并不顺利。尽管 .gradle 项目的 build/compilation 成功了,但我在 Spring Tool Suite 中收到 validation 错误。错误显示在 Eclipse 的 "Markers" 视图中。这是我到目前为止所做的。
- 在 Github 上分叉 Spring 安全主分支
- 为我的分叉分支复制了 https URL
- 在 Spring 工具套件中,导入->Git->项目来自 Git->克隆 URI
- 在 #3 Spring 之后,Tool Suite 从 Git 下载了项目
- Spring Tool Suite 提示我要创建什么类型的项目
- 我选择了"Import as a general project"
- 我从我的工作区中删除了该项目(但没有在磁盘上删除它)
- 我使用 Import->Gradle->Gradle 项目和推荐设置导入项目
一切构建完成后,我在 Spring Tool Suite 中收到以下错误:
该错误伴随着几条消息,包括以下内容:
- 切入点无法解析为类型
- 方法 aspectOf() 未定义类型 ...
- 方法 proceed() 未定义类型 ...
如果我打开 Eclipse .project 文件并添加以下内容,则可以修复此错误(使用丑陋的 hack):
<buildSpec>
<buildCommand>
<name>org.eclipse.ajdt.core.ajbuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.ajdt.ui.ajnature</nature>
</natures>
问题
如何正确设置我的开发环境?我应该研究什么来弄清楚为什么会出现这些错误?我目前正在研究 gradle/maven 配置与 Eclipse .project 文件的关系,但我还没有深入研究。
我发现这个 walkthrough 关于如何通过 gradle 将 spring 项目引入 Eclipse。它实际上看起来像是基于 Spring 安全性,这可能会为您创建一个很好的流程。
我的猜测是,eclipse 没有默认为其 dependency management 使用 gradle 配置。
以下是对我有用的(以及我与 Rob Winch 讨论的内容):
从 https://spring.io/tools/sts/all 下载 STS 3.7.2(不是最新的 3.7.3,导入 spring-安全项目时有一些问题)。有一个 link 到以前版本的 STS。在那里你找到 STS 3.7.2.
从这里安装 Groovy-Eclipse:http://dist.springsource.org/snapshot/GRECLIPSE/e4.5/
从这里安装 Gradle STS 工具: http://download.springsource.com/release/TOOLS/update/3.7.2.RELEASE/e4.5
安装上述所有组件后,使用 STS Gradle 支持导入 spring-安全项目 ("Import -> Gradle -> ...")
这可能需要一段时间,但在下载必要的工件后,所有这些项目都应该出现在您的工作区中。 "aspects" 上面有一个错误标记。右键单击该项目,转到 Groovy 上下文菜单条目,然后执行 "remove Groovy nature"(或类似的操作)。这删除了该项目的 groovy 工具并且编译正常。
完成所有这些步骤后,我得到了一个工作区,其中所有这些项目都可以正常编译。但看起来我们 could/should 将来可能会使用 Eclipse Oomph 安装文件来简化此过程。但那是未来的故事。
希望对您有所帮助!!!