`

编译运行Spring Security3的源代码及例子程序

 
阅读更多

近一直在学习spring security3,下载其3.02的文件后发现其自带的两个例子程序都是编译后而没有源代码的,研究起来很不方便,它的官方文档说例子程序及所有源代码都在库里面,于是研究了一下,终于下载并跑起来了。  
1.安装sts和groovy插件
 ss用的版本管理工具比较新和独特,叫git,目前看来用的人不是特别多,单独的客户端不是太好找,官方推荐的方式是使用springsource tool suite作为ide,简称sts,去http://www.springsource.com/downloads/sts 这里找一个合适的版本下载,分为32位和64位的,这点不错,现在很多人都用64位的系统了吧。sts自带了一个git插件,叫egit,所以这个不用安装了,另外需要安装一个groovy的插件,在线安装地址根据sts用的eclipse版本不同而不同,sts2.71基于eclipse3.7,所以使用http://dist.springsource.org/release/GRECLIPSE/e3.7/ ,3.6的就要使用ttp://dist.springsource.org/release/GRECLIPSE/e3.6/,安装完插件重启sts。

2.下载并导入源代码

   1)导入

    首先最好定义一个git库的根目录,使用HOME环境变量来定义,如:J:\repo
    

 
  2)点击clone,将库checkout,git中的checkout,commit,update的叫法都和svn等不一样,要习惯,checkout它叫clone  

  

 
  3)输入库url--git://git.springsource.org/spring-security/spring-security.git,点击next

   

   4)保持默认,next



 
5)next

 

 

6)这个时候停下来,它的库文件已经下到本地,即HOME环境变量里定义的位置,在命令行里进入到这个位置,运行命令:gradlew.bat eclipse,库里所有的源代码默认不是eclipse能识别的工程,所以运行这条命令的作用就是把它变成eclipse工程,为下一步的导入作准备。进行这一步的时候,要注意2点,一是它会访问一些被天朝和谐掉的网站来下载所需的jar,所以必须使用vpn,我自己用的是91vpn,速度刚刚的,免费的有SecurityKiss,都是程序员,相应如何寻找和安装对你不是难事,第二点是如果你运行这条命令几分钟了,一点反应也没有,原因八成是杀软拦截了访问网络,关掉杀软就好了,整个过程取决于你的vpn速度,我大概用了40分钟,这时你可以先去吃顿再回来接着搞。:-)

     过程截图如下:
  


 
 

  7)转换完毕后再回到sts,其实上一步最重要,这时候,sts关了再重新打开都无所谓,点击2次next,勾选住所有工程,然后点击finish即可完成导入了


 



   

    8)导入后的工程区

 

  9)这个时候如果直接右键工程--run on server,肯定会报spring相关类class not found的错误,我调查了一下,虽然在工程属性中所有必要的类--security和spring框架的类都引入了,但是部署的时候只有security的jars被拷贝到了web-inf/lib下,我其实对eclipse并不熟,后来仔细又看了一遍工程属性,发现有个deployment assembly,在那里可以指定部署时copy哪些jars,把未copy的全部选中加进去,再部署,就好了。如下图所示:



 

 

 

   10)运行tutorial工程,随便选个服务器就行,大功告成。
 
   由于包含了ss的所有源代码工程,所以运行例子工程时可以进入源代码去看,便于定位错误,不过说实话,帮助文档里写的例子太简单了,完全不productive,基本没什么学习价值,只能当成个参考手册而已。现在只有一本书是关于ss3的,去年3月份出的,叫<<security spring 3>>,语言比较易懂,貌似那时ss还不支持annotation,而现在支持了,想下的点附件。我在taobao上买了个影印版的,它比较适合学习用。别无选择了。匆匆写就,希望对你们有帮助,如有错误欢迎指正,共同研究。

 

  • 大小: 58.5 KB
  • 大小: 49 KB
  • 大小: 73.3 KB
  • 大小: 61.1 KB
  • 大小: 59.7 KB
  • 大小: 55.5 KB
  • 大小: 95.7 KB
  • 大小: 83 KB
  • 大小: 100.8 KB
  • 大小: 164.9 KB
  • 大小: 169.1 KB
  • 大小: 53.5 KB
  • 大小: 123.8 KB
分享到:
评论
6 楼 zqb666kkk 2013-12-03  
myeclipse10怎么导出a 
5 楼 theoffspring 2013-03-28  
jackjun8652 写道
你好,我在编译的时候报缺少类,jar包都加进去,不知道该怎么处理

你在deployment assembly中加进来了吗?
4 楼 jackjun8652 2013-03-27  
你好,我在编译的时候报缺少类,jar包都加进去,不知道该怎么处理
3 楼 xinghe_wang 2013-02-01  
很好的一篇文章.虽然出了点小问题,但是最终还是操作成功了.
2 楼 lehmann_ding 2012-05-08  
原来如此!
1 楼 elesen 2011-08-28  
非常感谢!
Global site tag (gtag.js) - Google Analytics