【问题标题】:Excel file corrupt when copied from src to target in Eclipse IDE从 src 复制到 Eclipse IDE 中的目标时 Excel 文件损坏
【发布时间】:2012-04-05 07:17:22
【问题描述】:

我对 eclipse 有一个奇怪的问题。当我将 .xls 文件放在 src/test/resources 路径中时,eclipse 会将其复制到 target 路径中。

但是,目标路径中的文件不再相同。我无法再在 MS Excel 中打开它,当我比较这两个文件时,我看到了一些二进制差异。怎么会这样?

PS:我的eclipse环境是用maven生成的。

【问题讨论】:

标签: java eclipse maven


【解决方案1】:

感谢以上答案,我们找到了解决问题的方法:

    <plugin>
      <artifactId>maven-resources-plugin</artifactId>
      <version>2.5</version>
      <configuration>
        <encoding>UTF-8</encoding>
        <nonFilteredFileExtensions>
          <nonFilteredFileExtension>xls</nonFilteredFileExtension>
        </nonFilteredFileExtensions>
      </configuration>
    </plugin>

【讨论】:

  • 感谢提示,我不知道这些选项 :)
【解决方案2】:

我遇到了同样的问题,这是由过滤和更改我的 Excel 文件的 Maven 资源插件引起的。

为防止这种情况发生,请添加如下内容(请参阅Maven doc):

<build>               
       <resources>
           <resource>
               <filtering>true</filtering>
               <directory>src/test/resources</directory>
               <excludes>
                   <exclude>**/*.xls</exclude>
               </excludes>
         </resource>
...

更新:复制资源,但不过滤

<resources>
      <resource>
        <directory>src/test/resources</directory>
        <filtering>true</filtering>
        <excludes>
          <exclude>**/*.xls</exclude>
        </excludes>
      </resource>
      <resource>
        <directory>src/test/resources</directory>
        <filtering>false</filtering>
        <includes>
          <include>**/*.xls</include>
        </includes>
      </resource>
      ...
    </resources>

【讨论】:

  • Ant 构建脚本有类似的问题,当您应用过滤器时,它必须读取文件,这假设您使用的是文本文件,并且文件将被复制为文本而不是字节,从而导致损坏
  • 使用这个 sn-p 不会复制 xls 文件。但是,我们需要文件,但没有损坏
  • @nico_ekito - 请你澄清你的答案,不清楚更新了什么,实际答案是什么。谢谢。
  • 我认为您将包含和排除混淆了。 filtering=true 资源应排除 excel 文件,filtering=false 资源应包含 excel 文件。
  • 同样的概念也适用于maven-assembly-plugin。 Excel 文件应位于单独的fileSet 标记中。为我工作。
猜你喜欢
  • 2011-08-14
  • 2014-09-01
  • 1970-01-01
  • 2018-08-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多