如何从命令行(而不是从STS)运行弹簧安全样本?

时间:2014-04-28 12:51:46

标签: maven spring-mvc spring-security

我正在尝试运行http://projects.spring.io/spring-security/

中的示例

本指南介绍了如何从Spring Tool Suite(STS)运行insecuremvc示例: http://docs.spring.io/spring-security/site/docs/3.2.x/guides/hellomvc.html

如何从命令行(而不是从STS)运行示例?

我已尝试将以下内容添加到pom.xml中 - >项目/构建/插件:

  <plugin>
    <groupId>org.apache.tomcat.maven</groupId>
    <artifactId>tomcat7-maven-plugin</artifactId>
    <version>2.2</version>
    <configuration>
      <path>/</path>
      <uriEncoding>UTF-8</uriEncoding>
      <hostName>localhost</hostName>
      <port>8080</port>
      <update>true</update>
      <useTestClasspath>true</useTestClasspath>
    </configuration>
  </plugin>

并正在运行

$ mvn package tomcat7:run

but browsing http://localhost:8080/sample/
I get a HTTP Status 400 - The request sent by the client was syntactically incorrect.

解决方案基于卢克的回答

$ git clone https://github.com/spring-projects/spring-security.git
$ cd spring-security/samples/insecuremvc
$ ../../gradlew tasks
# this shows several defined tasks, tomcatRunWar among them
$ ../../gradlew tomcatRunWar

1 个答案:

答案 0 :(得分:1)

我不确定这里的问题是什么,但如果您只是对运行Spring Security示例感兴趣,那么项目源代码树本身就有很多。

$ git clone git@github.com:spring-projects/spring-security.git
$ cd spring-security/samples/tutorial-xml
$ ../../gradlew jettyRun

将为您提供正在运行的服务器。您还可以使用本地gradle安装而不是项目中包含的包装器。初始构建需要一段时间,但是之后有很多示例项目可供您运行,显示XML命名空间和Java配置选项。