问题标签 [runtime-packages]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
delphi - 何时编译使用更改的运行时包的应用程序
我正在使用德尔福 XE2。我有一个大型项目,它有一个使用运行时包的应用程序 (EXE)、一个Core.bpl
自定义包(由 EXE 使用)和其他几个Plugin.bpl
也使用该Core.bpl
包(作为运行时包)的自定义包。
我注意到我可以在Core.bpl
不重新编译 EXE 或自定义Plugin.bpl
包的情况下对 . 但是更重要的更改(添加大量代码或从现有方法中删除大量代码,或添加新方法)会导致问题。有时会出现不一致的访问冲突,有时会出现包中缺少入口点的错误Core.bpl
等。
我想尽量减少编译的文件数量,以便我们的用户每次发布时要更新的文件更少。但是,我不希望他们看到我有时会看到的错误。
Core.bpl
我是否应该重新编译每次更改时使用的所有模块和 EXE ,或者是否有一些一般规则要遵循,以便仅针对某些类型的更改编译所有内容Core.bpl
?
delphi - 与运行时包链接
当我使用“与运行时包链接”设置为 true 构建项目时,输出 exe 非常小,在我的电脑上,exe 工作正常,但有些人收到 rtl190.bpl 丢失的错误。我怎样才能解决这个问题?我仍然想要一个小的输出文件。
wpf - 为什么我的 WPF 应用程序中出现“无法加载 DLL 'sqlite3'”?
我在我的应用程序中添加了我认为必要的 SQLite(和 sqlite-net)包。但是,在运行它时,我遇到了一个异常:
System.DllNotFoundException 未被用户代码处理 HResult=-2146233052 消息=无法加载 DLL 'sqlite3':找不到指定的模块。(例外来自
我安装了以下 SQLite 包:
什么不见了?
更新
我尝试了ajawad987的建议,但仍然得到相同的运行时错误,即使我有这个:
...和这个:
更新 2
这个运行时异常发生的地方(在 SQLite.cs 中)对我来说似乎很奇怪:
如果银光 || USE_CSHARP_SQLITE
别的
万一
但是我使用的是C#,那么为什么失败的行甚至还在运行呢?(它在“其他”块中失败)?
delphi - XE7 链接运行时包问题
我正在将我的代码从 Delphi 2007 移动到 XE7。我的程序使用后期绑定打包方式。所以我用“与运行时包的链接”选项编译我的应用程序。2007年我用了很长时间。
但是在 XE7 中,同样的包结构,导致:
“单元 X 是用不同版本的 Y.Txyz 编译的”错误消息。
我的一个包裹中的 X 单元。Y 单元也在一个库包中。关系似乎还可以。为什么 XE7 会出现此错误?我尝试了以下方法:
- 我清除了 .dcu 文件。
- 我在包中打开按需构建选项。
- 构建所有每个包和应用程序文件。
编译器传递了一些错误,但在其他地方重复“..用不同版本编译..”类型错误..
我不清楚这个问题。XE7的逻辑有变化吗?最好的祝福
java - 通过插件导出包
我有一个第三方 eclipse 插件,它导出了一些在我的其他插件编译期间不应该存在的包。
这些包对下游插件无条件可见(根据此处的约定,它被归类为可访问)。
一种选择是手动编辑插件并禁止导出的包。编辑插件对我来说不是一个选项(许可证问题)。
另一种选择是使用 -Dosgi.resolverMode=strict VM 参数启动。我也不能使用此选项,因为这会影响我环境中的其他插件。
上面我的理解可能有误。任何帮助将不胜感激,或者欢迎任何其他选择。
例如 :
我有一个名为 net.jeeeyul.eclipse.themes_2.2.0.I20140916-113709 的插件,它导出以下包
这不应该发生。在编译期间,这些插件中的任何一个都不应该对其他插件可见。
java - 在 Java Play 框架中扩展默认访问第 3 方方法
所以我在 Play 应用程序中使用了第三方库(即 Echo Nest Java API)。在库如何公开某些方法方面存在一些疏忽,我需要特别修改一种方法,其中涉及使用具有默认访问权限的构造函数。
我最初认为在扩展我需要修改的类的同一个包中创建一个类可以解决问题,但似乎 Java 的运行时包处理阻止了这种尝试(也就是说,因为这两个类使用了不同的类加载器不同的类,它们在同一个包中是不够的)。我有一些可能为我的子类或 Echo Nest 库修改类加载器的想法,但几乎不知道如何去做,或者是否有更好的解决方案可用。
任何正确方向的指针将不胜感激!
forms - Delphi 10:使用运行时包编译时显示 DLL 的形式
对不起,如果过去曾问过这个问题,但我很困惑!
我在 Delphi 中有一个应用程序和一个 DLL。Dll 有一个我想在 Groupbox 内显示的表单(无模式)。在主应用程序中,我启用了运行时包。如果我在 DLL 中禁用它们,则可以使用下面的代码。
在 DLL 中:
在主应用程序中:
但没有显示我是否为 DLL 启用运行时包(我想减小大小)。请问我该如何处理?提前致谢
java - 尽管在 IntelliJ 外部库中可见,但无法从 jar 文件中导入类
如截图 所示。我有使用 common-lending-lib 的项目方管理。common-lending-lib 然后使用 math2 库。
当我打开 common-lending-lib 项目时,它可以很容易地检测到 math2 的依赖关系并使用它。当我打开 party-management-project 时,它可以检测到 common-lending-lib 和 math2,但是在运行时,它在 common-lending-lib 从 math2 中获取的功能上失败。
可能是什么原因?如果重要的话,这些项目都在 Spring Boot 中。我使用 IntelliJ 2017.1.5 和 Java 1.8
包名可以是原因吗?我有:
- org.kd 包中的派对管理
- org.kd 包中的通用借贷库
- org.kd.math 包中的 math2
该项目的详细信息可以在https://github.com/LendingBusiness上找到
delphi - 如何获取 TPersistentClass 来自的动态包?
我的应用程序是使用运行时包构建的,并使用该LoadPackage
函数加载它们。然后它使用该GetClass
函数获取类类型。
有什么方法可以获取包的名称来自哪个MyClass
?
delphi - 在哪里为动态包使用的 DLL 调用 FreeLibrary?
我有一个动态加载的 BPL 包,它使用加载 DLL 的第三方库。
调用UnloadPackage
我的 BPL 包后,应用程序仍然锁定 DLL 文件。
为了测试,我正在使用该Windows.GetModuleHandle
功能。
我试过调用FreeLibrary
传递 DLL 的句柄,然后我可以删除 DLL 文件。我怀疑FreeLibrary
我的 BPL 包或第三方 BPL 中的某处缺少呼叫。
在上述情况下(动态加载的 BPL,它静态链接使用 DLL 的第三方 BPL),应该在哪里FreeLibrary
执行?