生成正确的 PolicyCenter Innsbruck .jar 文件(C:/Guidewire/policycenter/modules/configuration/build/libs/pc-configuration-50.9.0.jar)后,我尝试按照此处找到的规则生成页面对象:https://docs.guidewire.com/cloud/testing/202310/ui/gw-ui/topics/c_running_ignite.html
但是我收到此错误,其中似乎 ignite 没有在 pc-configuration-50.9.0.jar 中找到 .jar:
npx ignite --pcfOption pc --task generateGTUIPageObjectFiles --projectRootLocation "ui/pages/gw/generated/policycenter/" --pcfLocation "C:/Guidewire/policycenter/modules/configuration/build/libs/pc-configuration-50.9.0.jar"
-------------------------------------------------------------------
Running Ignite command:
-------------------------------------------------------------------
Ignite version= 2023.10.0
PCF Jar Location= C:/Guidewire/policycenter/modules/configuration/build/libs/pc-configuration-50.9.0.jar
Task Type= generateGTUIPageObjectFiles
Page Object Output Location= ui/pages/gw/generated/policycenter/pages
java.nio.file.NoSuchFileException: libsWithPcfs\pc-configuration-10.0.3.jar
at java.base/sun.nio.fs.WindowsException.translateToIOException(WindowsException.java:85)
at java.base/sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:103)
at java.base/sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:108)
at java.base/sun.nio.fs.WindowsFileAttributeViews$Basic.readAttributes(WindowsFileAttributeViews.java:53)
at java.base/sun.nio.fs.WindowsFileAttributeViews$Basic.readAttributes(WindowsFileAttributeViews.java:38)
at java.base/sun.nio.fs.WindowsFileSystemProvider.readAttributes(WindowsFileSystemProvider.java:198)
at java.base/java.nio.file.Files.readAttributes(Files.java:1764)
at java.base/java.util.zip.ZipFile$Source.get(ZipFile.java:1414)
at java.base/java.util.zip.ZipFile$CleanableResource.<init>(ZipFile.java:742)
at java.base/java.util.zip.ZipFile$CleanableResource.get(ZipFile.java:859)
at java.base/java.util.zip.ZipFile.<init>(ZipFile.java:257)
at java.base/java.util.zip.ZipFile.<init>(ZipFile.java:186)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:348)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:319)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:258)
at com.gw.ptf.mcg.utils.PcfUtils.printPCFVersion(PcfUtils.java:227)
at com.gw.ptf.mcg.utils.PcfUtils.setupPcfUtils(PcfUtils.java:147)
at com.gw.ptf.mcg.utils.PcfUtils.buildPcfProgramList(PcfUtils.java:175)
at com.gw.ptf.mcg.PCFOperation.initialiseConfiguration(PCFOperation.java:22)
at com.gw.ptf.mcg.PCFOperation.<init>(PCFOperation.java:18)
at com.gw.ptf.mcg.IgniteService.performPCFOperation(IgniteService.java:65)
at com.gw.ptf.mcg.IgniteService.main(IgniteService.java:33)
Exception in thread "main" java.lang.ClassNotFoundException: pcftest.Admin
at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:476)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:594)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:527)
at java.base/java.lang.Class.forName0(Native Method)
at java.base/java.lang.Class.forName(Class.java:398)
at com.gw.ptf.mcg.utils.PcfUtils.loadPcfClass(PcfUtils.java:61)
at com.gw.ptf.mcg.utils.PcfUtils.getRootPcfClasses(PcfUtils.java:111)
at com.gw.ptf.mcg.utils.PcfUtils.buildPcfProgramList(PcfUtils.java:179)
at com.gw.ptf.mcg.PCFOperation.initialiseConfiguration(PCFOperation.java:22)
at com.gw.ptf.mcg.PCFOperation.<init>(PCFOperation.java:18)
at com.gw.ptf.mcg.IgniteService.performPCFOperation(IgniteService.java:65)
at com.gw.ptf.mcg.IgniteService.main(IgniteService.java:33)
所以,怎么了? pc-configuration-50.9.0.jar 是在全新的 gwb clean && gwb 构建后创建的,没有错误,PolicyCenter 目前在我的笔记本电脑上运行良好...
这看起来 Ignite 无法找到依赖项 jar 文件。要解决这个问题,您有 2 个选择:
1.) 构建一个 uber jar(包含所有依赖项) 2.) 将依赖的 jar 文件部署到 Ignite 节点并删除 依赖 jar 文件的任何路径引用。
希望有帮助。