2017-09-03 12 views
1

Saxon 9.8에서 패키지를 사용할 때 약간의 어려움이 있습니다. 색슨은 제가 사용하고자하는 꾸러미를 찾지 못하고 컴파일 할 때 실패합니다.Saxon에서 패키지를 찾을 수 없습니다

명령 줄에서 -lib 옵션을 사용하여, 나는 다음과 같은 오류 메시지가 :

java.lang.NullPointerException 
     at net.sf.saxon.style.PackageVersion.<init>(PackageVersion.java:71) 
     at net.sf.saxon.trans.packages.VersionedPackageName.<init>(VersionedPackageName.java:29) 
     at net.sf.saxon.trans.packages.PackageInspector.getNameAndVersion(PackageInspector.java:78) 
     at et.sf.saxon.trans.packages.PackageInspector.getPackageDetails(PackageInspector.java:91) 
     at net.sf.saxon.trans.packages.PackageLibrary.<init>(PackageLibrary.java:96) 
     at net.sf.saxon.Transform.doTransform(Transform.java:404) 
     at net.sf.saxon.Transform.main(Transform.java:81) Fatal error during transformation: java.lang.NullPointerException: (no message) 

부가 작센 9.8 산소 19 -lib 옵션을 사용하여, 나는 다음과 같은 메시지가 :

Nom du moteur: Saxon-EE 9.8.0.4 (External) 
Gravité: fatal 
Description: Cannot find package img_pkg (version *) 
Emplacement de début: 7:52 

구성 파일을 사용하여 패키지를 선언 할 때 oXygen에서 정확하게 동일한 오류 메시지가 나타납니다.

나는 파일 경로에 문제가 없다고 확신한다. oXygen에있는 오류 메시지에서 패키지 버전이 인식되지 않는 것 같아서 구문 문제 일 수 있다고 생각했지만 어디서 왔는지 찾을 수 없습니다.

은 여기 내 패키지를 테스트입니다 : 사전에

<?xml version="1.0" encoding="UTF-8"?> 
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
    xmlns:xs="http://www.w3.org/2001/XMLSchema" 
    xmlns:img="https://www.ephe.fr/annuaire/colin-brisson" exclude-result-prefixes="xs" 
    version="3.0"> 

    <xsl:use-package version="1.0" name="img_pkg"/> 

    <xsl:template name="xsl:initial-template"> 

     <xsl:message> 
      <xsl:value-of select="img:test()"/> 
     </xsl:message> 

    </xsl:template> 

</xsl:stylesheet> 

많은 감사 :

<?xml version="1.0" encoding="UTF-8"?> 
<xsl:package name="img_pkg" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
xmlns:xs="http://www.w3.org/2001/XMLSchema" 
xmlns:img="https://www.ephe.fr/annuaire/colin-brisson" 
    exclude-result-prefixes="xs img" version="1.0"> 

    <xsl:function name="img:test" visibility="final" as="xs:string"> 
     <xsl:value-of select="'test ok'"/> 
    </xsl:function> 

</xsl:package> 

여기 내 테스트 sylesheet입니다!

+1

예외가 발생하면 명령 줄을 표시 할 수 있습니까? –

+0

답장을 보내 주셔서 감사합니다. @MartinHonnen. 내 명령은'java -cp C : \ SaxonEE9-8-0-3J \ saxon9ee.jar net.sf.saxon.Transform -lib : img_pkg.xsl-xsl : test.xsl -it'입니다. 패키지와 스타일 시트는 모두 작업 디렉토리에 있습니다. – colibrisson

+1

'xsl : package'에 명시 적'package-version' 속성을 기증하면 어떻게 될까요? –

답변

1

나는 3373

https://saxonica.plan.io/issues/3373

귀하의 경우 근본 원인이 버그 항목과는 약간의 차이가 있지만, 그것의 부재의 명령 줄에서 NullPointerException이 버그로 인해이라고 생각 package-version 속성. 이 문제는 9.8.0.4에서 수정되었지만 스택 추적의 줄 번호에서 이전 유지 관리 릴리스를 사용하고있는 것처럼 보입니다.

oXygen의 문제는 아마도 완전히 다르지만 다시 @ package-version이없는 것과 관련이 있습니다.