Apache POI는 일반적으로 Ant를 통해 컴파일되며 xmlbeans-Ant-task가 OfficeOpenXML 스키마를 코드로 변환하는 데 사용되는 몇 가지 단계가 있습니다.Ant 및 Maven을 통해 실행할 때 XMLBeans가 다른 코드를 만듭니다.
현재 Apache POI에서 Sonar 검사를보다 쉽게 수행하기 위해 코드를 컴파일하는 해당 Maven pom.xml 파일 세트를 작성 중입니다.
그러나 생성 된 클래스 중 일부는 XMLBeans가 코드를 생성 할 때 다르게 나타납니다. 문이있는 개미 파일에서
: 즉, 메이븐에서<xmlbean
schema="${ooxml.encryption.xsd.dir}"
srcgendir="${ooxml.encryption.src.dir}"
optimize="yes"
destfile="${ooxml.encryption.jar}"
javasource="1.5"
failonerror="true"
fork="true"
memoryMaximumSize="${ooxml.memory}"
>
<classpath refid="ooxml.classpath"/>
</xmlbean>
내가
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>xmlbeans-maven-plugin</artifactId>
<version>2.3.3</version>
<executions>
<execution>
<phase>generate-sources</phase>
<goals>
<goal>xmlbeans</goal>
</goals>
</execution>
</executions>
<configuration>
<schemaDirectory>target/schemas</schemaDirectory>
<javaSource>1.5</javaSource>
<optimize>yes</optimize>
</configuration>
</plugin>
대부분의 클래스가 동일하지만, 하나는 다른 게터/세터를 임명했다 사용
개미 생산
/**
* Gets the "encryptedKey" element
*/
com.microsoft.schemas.office.x2006.keyEncryptor.password.CTPasswordKeyEncryptor
getEncryptedPasswordKey();
/**
* Gets the "encryptedKey" element
*/
com.microsoft.schemas.office.x2006.keyEncryptor.password.CTPasswordKeyEncryptor
getEncryptedKey();
나는이 문제를 해결할 수있는 방법이 있나요 :
하지만 메이븐 다른 게터 생산의 다른 이름 방법을주의? 지금까지 XMLBeans에 관해서는 거의 알지 못했지만 정확히 동일한 소스 -XSD가 사용되었습니다. 따라서 여기서는 사용하는 설정이 다를 수 있습니다 ...
명백한 질문입니다. 같은 버전의 XMLbeans을 사용하고 있습니까? ANT 빌드를 확인하십시오. –
예, 양쪽에 2.3.0이며, 2.6.0에서도 확인되었습니다. 아무런 운이없는 것 같습니다 ... – centic
죄송합니다 Dominik, 나는이 질문을 우리의 음향 기기 소스에서 링크 된 것으로 보았습니다. 메서드 이름 지정은 .xsdconfig 파일 (encryptionCertificate.xsdconfig 및 encryptionPassword.xsdconfig)에 의해 구성됩니다. 나는 아직 그것을 검사하지는 않았지만, 개미가 maven과 다른 lookup dir을 가지고있는 것으로 보인다. – kiwiwings