Tag: maven

使用poi-ooxml破坏资源提供

我正在尝试使用外部configuration文件来制作jar文件。 使用poi-ooxml库之前一切正常。 之后我遇到资源提供的问题。 我使用下一个pom.xml: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>xxx</groupId> <artifactId>yyy</artifactId> <version>0.1</version> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-assembly-plugin</artifactId> <version>2.6</version> <configuration> <archive> <manifest> <mainClass>zzz</mainClass> </manifest> <manifestEntries> <Class-Path>./configs/</Class-Path> </manifestEntries> </archive> <descriptorRefs> <descriptorRef>jar-with-dependencies</descriptorRef> </descriptorRefs> </configuration> <executions> <execution> <id>make-assembly</id> <phase>package</phase> <goals> <goal>single</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.8</source> <target>1.8</target> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> […]

Apache POI – CellStyle.ALIGN_RIGHT

我正在尝试alignment文本。 在这里我的pom.xml: <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId> <version>3.17</version> </dependency> 在我的代码中: import org.apache.poi.ss.usermodel.CellStyle; 但是当我想使用它( CellStyle.ALIGN_RIGHT ),我得到这个编译错误:

Spring,JXLS:XLS转换器不加载,尽pipe存在依赖关系。

我正在尝试使用JXLS ,这是一个Java库,用于在Spring-MVC项目中创buildexcel文件和其他操作。 当我尝试从某些数据中创build一个excel文件时,出现以下错误: 错误日志: java.lang.IllegalStateException: Cannot load XLS transformer. Please make sure a Transformer implementation is in classpath at org.jxls.util.JxlsHelper.createTransformer(JxlsHelper.java:200) at org.jxls.util.JxlsHelper.processTemplateAtCell(JxlsHelper.java:118) at com.journaldev.spring.service.GroupNotesServiceImpl.saveGroupNotesToExcel(GroupNotesServiceImpl.java:917) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:497) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317) 代码: @Override public void saveGroupNotesToExcel(int msectionid){ List<GroupNotes> groupNotesList = this.groupNotesDAO.listGroupNotesBySectionId(msectionid); try(InputStream is = GroupNotesServiceImpl.class.getResourceAsStream("/home/path/to/jls/test.xls")) { try (OutputStream os = new […]

通过apache poi读取excel文件(在classpath中)

我想阅读(使用Apache poi).xlsx文件,这是不是在文件系统,但在类path。 我正在使用maven – 所以它在资源文件夹。 我的代码是 – InputStream resourceAsStream = MyReader.class.getClassLoader().getResourceAsStream("test.xlsx"); Workbook wb = new XSSFWorkbook(resourceAsStream); 我得到这个例外。 Caused by: java.lang.IllegalArgumentException: MALFORMED at java.util.zip.ZipCoder.toString(ZipCoder.java:58) ~[?:1.7.0_51] at java.util.zip.ZipInputStream.readLOC(ZipInputStream.java:297) ~[?:1.7.0_51] at java.util.zip.ZipInputStream.getNextEntry(ZipInputStream.java:121) ~[?:1.7.0_51] at org.apache.poi.openxml4j.util.ZipInputStreamZipEntrySource.<init>(ZipInputStreamZipEntrySource.java:51) ~[poi a3] at org.apache.poi.openxml4j.opc.ZipPackage.<init>(ZipPackage.java:88) ~[poi-ooxml-3.11-beta3.jar:3.11-beta3] at org.apache.poi.openxml4j.opc.OPCPackage.open(OPCPackage.java:272) ~[poi-ooxml-3.11-beta3.jar:3.11-beta3] at org.apache.poi.util.PackageHelper.open(PackageHelper.java:37) ~[poi-ooxml-3.11-beta3.jar:3.11-beta3] 当我从文件系统读取相同的文件时,一切都很好。 我的代码中是否有错误,或者我想知道什么? UPDATE1:这是在web应用程序,所以代码部署在tomcat 7。 更新2:当我用这种方式读取相同的文件 – 它的工作原理。 File file = new File("C:\\Users\\…..\\test.xlsx"); […]

Apache Poi 3.13找不到类来打开XLSX文件

我正在使用Apache POI来读取和写入Java的Excels文件,但是我无法在源文件中findWorkbookFactory或XSSFWorkbook来读取xlsx文件。 pom.xml : <poi.version>3.13</poi.version> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>${poi.version}</version> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId> <version>${poi.version}</version> </dependency> 我无法find可能导致这种行为的Apache poi更新日志中的任何信息。 编辑 :在这里我的实现(只是一个简单的方法) public static HSSFSheet getXLSSheet(String fileName, int sheetIndex) throws IOException { InputStream inputStream = new FileInputStream(fileName); HSSFWorkbook workbook = new HSSFWorkbook(inputStream); return workbook.getSheetAt(sheetIndex); } 我试图打开一个XLSX文件,但因为我找不到其他两个类(WorkbookFactory或XSSFWorkbook),我期望有这样的错误: org.apache.poi.poifs.filesystem.OfficeXmlFileException: The supplied data appears to be in the Office 2007+ XML. […]