有没有办法阻止Delphi中的包隐式导入未包含在“Contains”列表中的单元?我正在寻找一个编译器指令,如果它试图进行隐式导入,会使构建失败。
将软件包安装到IDE中会隐式导入单元A,然后尝试安装另一个真正包含单元A的软件包,IDE会告诉您它无法安装该软件包,因为单元A已包含在即使它不应该是第一个包!
答案 0 :(得分:5)
Delphi 2009可以选择对失败发出警告。只要让它失败,那就可以做你想做的事。
要防止隐式导入,您需要显式导入它,或删除隐式导入它的单位。
答案 1 :(得分:3)
如果您使用的是比2009年更旧的Delphi版本,则可以使用DDevExtensions(它是免费的)使警告导致错误。安装后,转到工具> DDevExtensions - 选项和“编译器增强功能”部分中的“激活”复选框和“将警告视为错误”。您可以在下面的备忘录中添加您不希望被视为错误的警告。不幸的是,在你的情况下,看起来你只想要将一个警告视为一个错误,所以你必须添加几乎所有警告,除了关于隐式导入到列表的警告,尽管它通常是良好的编码实践来解决无论如何所有编译器警告,所以你可能只想让所有警告都导致错误。
答案 2 :(得分:0)
无法将该警告变为错误。在Delphi 2009中,您可以将所有警告视为错误。
PS:Delphi for .Net
是一个错误