我的包装单位究竟在哪里?

时间:2012-06-05 15:41:20

标签: delphi packages delphi-xe

我使用包装,我甚至创造它们,但我担心我从未理解它们。我最近安装了JCL和JVCL(顺便提一下很棒的包!)。在表单上放置一些控件。一切都好。我的测试应用程序中也使用了相同的表单。编译器会询问jedi单位的位置:例如JvExControls。现在,我通过将单元添加到我的项目来解决了这个问题,但这对于Jedi文件来说是不可行的。

这似乎是一个路径问题,但到目前为止,我可以看到Jedi将路径设置为Ok。我做错了什么?

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:6)

JVCL安装程序通常会为您执行此操作。您可能在计算机环境中有一些奇怪的东西阻止安装程序执行它,或者您可能在安装后搞砸了它。你想尝试通常的第一件事,我希望,这只是重新运行Jedi JCL然后重新运行JVCL安装程序? (JVCL依赖于JCL,因此您正在寻找的单位可能是JCL的一部分,而不是JVCL。)

所以有BPL文件,这些文件位于系统的PATH环境变量中的文件夹中,因此可以通过RAD Studio IDE找到它们。

其次,有PAS文件,通常可以通过浏览全局library path中的目录找到这些文件 - 安装程序通常会为您设置,而在Jedi的情况下,它通常指向DCU文件而不是PAS文件 - 如果您在安装程序运行后没有弄乱您的库路径,那么它应该包含所有delphi单元的路径,包括Jedi JVCL和其他组件供应商的文件夹。

第三,一些开发人员选择在项目选项中为他们拥有的每个项目文件设置他们的Project Search Path选项,以便Delphi可以找到。

如果IDE在启动时无法加载包,那么您不仅应该检查所有三件事(PATH环境变量,如果您的代码不能构建,则不应检查其他内容,你还应该寻找重复或额外的副本。

不要在项目中添加单元,只需使用Project Search Path选项。

更新这可能是因为您通过将jvcl / jcl单元添加到项目中来明确重新编译它们,并且因为您(因此)也获得了Jedi JVCL DCU文件,在jedi Library Dcu文件夹外面,你有一团糟。你的解决方案是每次都从源代码构建它,这有点慢,但有为你工作的好处,所以没关系。