0

我搜索禁用所有语言并将默认语言设置为英语。所以只有英文可用。但我认为在 jasig CAS 中不可能做到这一点。

所以我试图从我的 jasig CAS 构建的最终 .war 文件中删除所有语言文件。

她是我的 pom.xml 文件:

<modelVersion>4.0.0</modelVersion>
<groupId>lu.ion.cas</groupId>
<artifactId>cas-ion</artifactId>
<packaging>war</packaging>
<version>1.0-SNAPSHOT</version>
<name>cas-ion Maven Webapp</name>
<url>http://maven.apache.org</url>

<dependencies>
    <dependency>
        <groupId>org.jasig.cas</groupId>
        <artifactId>cas-server-webapp</artifactId>
        <version>${cas.version}</version>
        <type>war</type>
        <scope>runtime</scope>
    </dependency>

    <dependency>
        <groupId>org.jasig.cas</groupId>
        <artifactId>cas-server-support-ldap</artifactId>
        <version>${cas.version}</version>
        <type>jar</type>
        <scope>runtime</scope>
    </dependency>
</dependencies>

<properties>
    <cas.version>3.5.1</cas.version>
</properties>

<repositories>
    <repository>
        <id>ja-sig</id>
        <url>http://oss.sonatype.org/content/repositories/releases/</url>
    </repository>
</repositories>

<build>
    <plugins>
        <plugin>
            <artifactId>maven-war-plugin</artifactId>
            <configuration>
                <warName>cas-ion</warName>
                <excludes>
                    <exclude>**/messages_*.properties</exclude>
                </excludes>
            </configuration>
        </plugin>
    </plugins>
</build>

应该删除这些文件的部分:

<excludes>
    <exclude>**/messages_*.properties</exclude>
</excludes>

但这些文件仍然存在。

4

2 回答 2

2

使用此处描述的 Maven War 插件叠加层:http ://maven.apache.org/plugins/maven-war-plugin/overlays.html

在这种情况下,pom 是这样的:

<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>2.4</version>
<configuration>
    <overlays>
        <overlay>
            <groupId>org.jasig.cas</groupId>
            <artifactId>cas-server-webapp</artifactId>
            <excludes>
                <exclude>WEB-INF/classes/messages_*.properties</exclude>        
            </excludes>
        </overlay>
    </overlays>
</configuration>

如果您想包含一种语言,请添加另一个叠加层,如下所示:

<overlay>                           
<groupId>org.jasig.cas</groupId>
<artifactId>cas-server-webapp</artifactId>                          
<includes>
    <include>WEB-INF/classes/messages_en.properties</include>                       
</includes>

于 2013-10-15T07:30:27.063 回答
0

使用webResources元素。http://maven.apache.org/plugins/maven-war-plugin/faq.html#webresourcesexclude

<plugin>
  <artifactId>maven-war-plugin</artifactId>
  <version>2.3</version>
  <configuration>
    <webResources>
      <resource>
        <directory>path_to_messages</directory>
        <excludes>
          <exclude>messages_*.properties</exclude>
        </excludes>
      </resource>
    </webResources>
  </configuration>
</plugin>
于 2012-10-19T11:25:08.847 回答