当前位置: 首页 > 知识库问答 >
问题:

WiX:当我用Feature属性替换repititous时,没有包含片段

龙浩博
2023-03-14

我们正在更新一些旧的WiX脚本,以利用组件的功能属性,这样无论何时添加或删除组件,我们都不必在两个位置更新文件(一次是添加组件,另一次是向组件组添加组件引用)。

我们将WiX项目分离到单独的文件中,每个片段一个,以使事情更易于管理。但是,我定义特性组件的片段不再包括在内。这听起来与托马斯在回应特性属性声明时的问题完全相同。但是,当他使用热自动生成他的Wix文件时,我们正在从头开始手工制作它们。

我尝试在片段的. wxs文件中创建一个虚拟属性,然后在产品元素中的main. wxs中引用它。该片段仍未包含,我得到了一个无效的属性ID。

我们最初尝试使用这里描述的策略来引用组件中的目录,但是虽然这消除了对充满ComponentRefs的单独ComponentGroup的需求,但它也将我的组件定义与目录树定义分开,这违背了只需要在一个地方查看以进行更新的目的。

我需要把我所有的片段都放到主产品中吗。wxs文件只是为了利用特征属性,并避免在每个组件的两个位置更新文件?或者有没有一种简单的方法可以让片段包含在内?再次使用虚拟属性引用似乎不起作用。

编辑:我想我在我的构建中发现了问题——我在产品标签下定义了一个目录,然后在片段中定义了一个DirectoryRef,而不是相反。

共有1个答案

唐珂
2023-03-14

看看我们是如何编写WiX设置本身的:在ComponentGroups下编写组件,并使用ComponentGroupRef将其拉入功能中。这消除了大部分重复。您可以在与组件/组件组相同的文件中编写片段中的Directory和DirectoryRef元素

 类似资料:
  • 我有一个活动,它包含一个片段容器(FrameLayout),我在Activity.onCreate()期间在其中放置了一个片段。片段包含一个包含一串片段的ViewPager。所有这些工作都很好。页面内容显示,我可以很好地在页面中滑动,甚至可以看到操作栏中的操作,因为贡献的页面变得可见。 现在我用另一个片段替换包含ViewPager的片段: 此外,我已经用FragmentPagerAdapter替换

  • 在我的应用程序中,当点击导航抽屉上的不同项目时,我需要在片段之间切换。我为它创建了一个新方法DisplayFragment。代码如下: 它显示了错误的"片段元素在上面的行如下"错误的第二个参数类型找到android.support.v4.app.片段;需要android.app.片段;" 我试着改变从android的导入。支持v4.app。碎片到android。应用程序。碎片但它随后显示了Frag

  • 问题内容: 基本上,我试图使用Selenium的Xpath处理以下HTML: 我正在使用以下选择器: 看起来很简单,但是根据Selenium,它返回0个匹配项。我也在在线xpath测试器中尝试过: http://codebeautify.org/Xpath-Tester 而且也不会返回任何结果。奇怪的是,当我删除 xmlns =“ http://www.w3.org/1999/xhtml” -at

  • 当我从2.0版迁移到4.0版后,从WIx安装程序的命令行运行以下命令时 我收到以下错误: 我在第4行EMR_COMMON. wxs文件中看到了错误。 碎片 我认为“src”属性已弃用,应该用其他属性替换。 但是在这里,我不能直接替换EMR\u COMMON中的“src”属性。它从“Build.xml”生成的wxs文件bcz。 那么,为了在“EMR\u COMMON.wxs”文件中获得合适的属性,我

  • 如何在Gradle中包含属性文件? 例如,在Ant中,我可以执行以下操作: