我添加了jre-8u121-windows-x64.exe
并制作了install.cmd
start /B /WAIT jre-8u121-windows-x64.exe /s SPONSORS=0
在我的/PackageRoot/Code
文件夹
添加了
<SetupEntryPoint>
<ExeHost>
<Program>install.cmd</Program>
<WorkingFolder>CodePackage</WorkingFolder>
<ConsoleRedirection FileRetentionCount="5" FileMaxSizeInKb="2048"/>
</ExeHost>
</SetupEntryPoint>
到我的服务清单
将主体添加到应用程序清单
<Principals>
<Users>
<User Name="Admin">
<MemberOf>
<SystemGroup Name="Administrators" />
</MemberOf>
</User>
</Users>
并运行政策
<Policies>
<RunAsPolicy CodePackageRef="Code" UserRef="Admin" EntryPointType="All" />
</Policies>
但由于某种原因未安装JRE。
使用上面的CMD版本时,它不会失败,我没有任何包含信息的日志文件。
我还直接在服务清单的Program和Arguments元素中尝试jre-8u121-windows-x64.exe /s
,这导致问题在事件日志中以退出代码1终止 - 但也没有关于它失败原因的真实信息。
SetupEntryPoint:ExeEntryPointDescription { Program = jre-8u121-windows-x64.exe, Arguments = /s /L d:/javainstall.log, WorkingFolder = Work, PeriodicIntervalInSeconds = 0 ConsoleRedirectionEnabled = true ConsoleRedirectionFileRetentionCount = 5 ConsoleRedirectionFileMaxSizeInKb = 2048 } terminated with exitcode 1. CodePackageIdentifier { ServicePackageId = S-Innovations.Elastic.ElasticApplicationType_App31:S-Innovations.Elastic.ElasticServicePkg, CodePackageName = Code }:131369814689037041
答案 0 :(得分:0)
我在我的应用程序中以类似的方式运行setup.cmd文件,并且使用 CodeBase 而不是CodePackage正常运行。可能值得尝试。见https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-deploy-existing-app
汉斯