21

ビルドサーバーの1つでこのエラーが発生しています。他のすべてのサーバーはそれを問題なく構築します。何が間違っている可能性があるのか​​?

4

5 に答える 5

50

そのwix3.6の問題。ここで解決策を見つけました。あなたがする必要があるのはあなたのwixプロジェクトに次のプロパティ<EnableProjectHarvesting>True</EnableProjectHarvesting>を追加することです

<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <EnableProjectHarvesting>True</EnableProjectHarvesting>
于 2012-10-05T07:29:23.267 に答える
8

私もこのエラーが発生しました。新しいセットアップが作成されたときにWixから自動的に生成された新しいもののようです。3.5から3.6にアップグレードしたとき、Wixは気に入らなかったので、単に削除しました。

于 2012-09-12T11:03:54.670 に答える
4

私の場合、ComponentRef代わりに使用する必要がありますComponentGroupRef

于 2016-06-29T05:19:25.540 に答える
1

Wix 3.5からにアップグレードした後Wix 3.8、同じ問題が発生しました。ただし、プロジェクトハーベスティングは必要ないためEnableProjectHarvesting、trueに設定することは適切な解決策ではありません。したがって、問題を解決するには、いくつかの変更が必要でした。

このファイルProduct.wxsでは、次の行を(属性から<Feature>)完全に削除しました。

<ComponentGroupRef Id="Product.Generated" />



その後、で.wixproj、をに更新しLinkerBaseInputPathsましたDefineConstants

つまり、これは変化を意味します

<LinkerBaseInputPaths>%(ProjectReference.RootDir)%(ProjectReference.Directory)obj\$(Configuration)\Package\PackageTmp\</LinkerBaseInputPaths>

(そして、の追加にも注意してくださいBasePath=%

<DefineConstants>BasePath=%(ProjectReference.RootDir)%(ProjectReference.Directory)obj\$(Configuration)\Package\PackageTmp\</DefineConstants>



そして最後に追加しました

PreprocessorVariable="var.BasePath"

HeatDirectory属性(前の手順で変更したPropertyGroupのすぐ下)に追加します。

于 2014-09-16T17:16:17.700 に答える
0

私の場合、同じエラー番号が表示されていました。

file_name.wxs(38):エラーLGHT0094:シンボルへの未解決の参照'WixComponentGroup:Name_of_the_ComponentGroup

これは、ComponentGroupを別のファイルに移動し、candle.exeを呼び出すビルドスクリプト(私の場合はcmake、おそらくantを使用)が、ComponentGroupを含む.wxsファイルを含むように更新されていなかったためです。

新しいファイルを含めるようにcmakeスクリプトを更新すると、エラーが修正されました。そして、これは未解決の参照であったため、エラーメッセージは実際には意味がありました。

于 2016-12-15T02:07:38.087 に答える