我正在尝试在VS 2010中构建一个PIP项目。我正在使用Ocean SDK 2012.当我创建PIP项目时,我使用了向导,但我注意到预构建事件具有DeployList.xml首先它应该是参数列表中的第二个。现在,当尝试进行构建时,会出现一个错误,说明了这一点 “无法创建目标文件夹。”
我不确定这个目标文件夹应该是什么或在哪里。有没有人以前做过PIP项目,可以给出任何提示......
答案 0 :(得分:1)
仅供参考:我们通过Ocean Developers Portal(http://www.ocean.slb.com)获得了几个类似的问题,可能是您的一个:),在这种情况下,您可以忽略以下答案:
我们发现csproj文件有问题,您可以检查是否有相同的内容:在记事本/文本板中打开文件并检查PropertyGroup条件的这两个标签:
< PropertyGroup Condition =“'$(Configuration)| $(Platform)'=='Release | x64'”>
< PropertyGroup Condition =“'$(Configuration)| $(Platform)'=='Debug | x64'”>
这里的问题是DeployCopier解析器会跳过这些节点,因为它与具有属性的节点不匹配:
“'$(配置)| $(平台)'=='发布| x64'”
请注意领先和小径空间!
DeployCopier使用它来比较:
string.Format(“'$(Configuration)| $(Platform)'=='{0} | {1}'”,data.Config,data.Platform);
(带前导和尾随空格)
将来,它将在DeployCopier中修复以忽略这些空格。
如果在开始双引号之后和文件中结束双引号之前语句没有单个空格,请尝试在PropertyGroup属性值之前和之后添加空格,如:
< PropertyGroup Condition =“'$(Configuration)| $(Platform)'=='Release | x64'”>
< PropertyGroup Condition =“'$(Configuration)| $(Platform)'=='Debug | x64'”>
答案 1 :(得分:0)
使用SDK 2012和VS2010的PIP构建器没有问题。请确保您的PIP项目与您的插件在同一解决方案下,并且您只有一个插件将以PIP方式打包。正确的PIP项目的事件如下:
预生成:
rmdir“$(ProjectDir)\ obj \ copytemp”/ s / q “$(ProjectDir)DeployCopier.exe”“$(ProjectDir)DeployList.xml”“$(ProjectDir)\ obj \ copytemp”/ config:$(ConfigurationName)/ platform:“$(PlatformName)”
生成后:
“%Ocean2012Home%\ PluginPackager.exe”/ p“$(ProjectDir)\ obj \ copytemp \ DeployPlugin1testBuild.dll”“$(TargetDir)$(TargetName).pip”
可能您需要从解决方案中删除以前的PIP项目并重新创建它。