EasyExcel 3.3.4 写Excel

EasyExcel官方文档
根据官方文档,引入EasyExcel的依赖,一直报错,发现是这个依赖冲突了
说实话有点抽象,它自己的包还能引入两个不同版本的依赖

<dependency>
    <groupId>org.apache.xmlbeans</groupId>
    <artifactId>xmlbeans</artifactId>
</dependency>

排掉这个依赖后,又产生了日志依赖错误,人裂开了
继续看官方文档,让排掉这个依赖

<exclusion>
   <artifactId>poi-ooxml-schemas</artifactId>
   <groupId>org.apache.poi</groupId>
</exclusion>

然后排掉后,还是报错,仔细分析一下依赖树,最终的依赖如下

    </dependencies>
       <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>easyexcel</artifactId>
            <version>3.3.4</version>
            <exclusions>
                <exclusion>
                    <groupId>org.apache.poi</groupId>
                    <artifactId>poi-ooxml</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi-ooxml</artifactId>
            <version>4.1.2</version>
        </dependency>
    </dependencies>

代码运行正常了

public class Test {
  void export() {
        List<PrintJobExport> printJobExportList = ...
        String pathName = ...
        EasyExcelFactory
                .write(pathName, PrintJobExport.class)
                .sheet("第三方打印任务")
                .doWrite(printJobExportList);
    }
}

@Getter
@Setter
@EqualsAndHashCode
@ContentStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER)
public class PrintJobExport {

    @ColumnWidth(40)
    @ExcelProperty("ID")
    private String id;

    /**
     * 仓库编码
     */
    @ColumnWidth(20)
    @ExcelProperty("仓库编码")
    private String warehouseCode;

    /**
     * 业务编码
     */
    @ColumnWidth(20)
    @ExcelProperty("业务编码")
    private String bizCode;

    /**
     * 打印机编码
     */
    @ColumnWidth(20)
    @ExcelProperty("打印机编码")
    private String printerNo;

    /**
     * 给三方打印组件通过 websocket 发送的消息
     */
    @ColumnWidth(40)
    @ExcelProperty("消息")
    private String message;

    /**
     * 任务Id
     * 调用三方打印组件时传递的任务Id 不同平台名字可能不同
     * 比如: 京东-key; 菜鸟-taskId;
     */
    @ColumnWidth(20)
    @ExcelProperty("任务Id")
    private String taskId;
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容