加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Delphi XE自定义构建目标总是被禁用

发布时间:2020-12-15 05:28:06 所属栏目:大数据 来源:网络整理
导读:我创建了一个自定义的MSBuild .targets文件,我已经通过IDE包含在一个Delphi XE项目中,并从项目管理器的上下文菜单中启用它。虽然文件验证,它总是在我重新保存项目文件后被禁用。 以下是目标文件的简化版本,命名为Custom.targets。 Project xmlns="http:/
我创建了一个自定义的MSBuild .targets文件,我已经通过IDE包含在一个Delphi XE项目中,并从项目管理器的上下文菜单中启用它。虽然文件验证,它总是在我重新保存项目文件后被禁用。

以下是目标文件的简化版本,命名为Custom.targets。

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <Target Name="Hello">
    <Message Text="Hello from custom target"/>
  </Target>
</Project>

作为一个独立的文件,这是按预期:打字…

MSBuild Custom.target /t:Hello

…在命令行给出预期的消息。

通过IDE将Custom.targets添加到Delphi项目中会按预期在项目管理器中显示文件,而.dproj文件现在包含行…

<TargetsFile Include="Custom.targets"/>

我在IDE的项目管理器中右键单击该文件,并选择启用。但是当项目构建时,构建消息窗口显示:

[MSBuild Warning] Custom.targets(1): Ignoring disabled import: PathToProjectSourceCustom.targets

在项目管理器中再次右键单击仍显示启用选项,而不是预期的禁用。

在命令行MSBuild ProjectName.dproj / t:Hello也失败。

我试过黑客的.dproj文件添加行…

<Import Project="Custom.targets"/>

键入MSBuild ProjectName.dproj / t:现在可以使用Hello。但是下次我从IDE保存项目文件时,语句被删除。

任何人都有任何想法,哪里出了问题请?

解决方法

Delphi生成整个dproj内容本身,这个自定义导入将永远被删除。

你可以编写自己的msbuild xml文件,但dproj属于Delphi。

除非你有源代码或愿意猴子补丁的ide,你不能这样做。

如果你真的想要一个灵活的xml方式来构建delphi项目和创建目标galore尝试想要或想要vnext(我的fork on bitbucket)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读