问题标签 [dynamic-compilation]
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.
java - 如何通过 javax.tools JavaCompiler 使用仅在内存中可用的依赖项?
我需要编译具有仅作为类文件存在的依赖项的 java 文件,这些文件已由 JVM 加载并进行编译。我正在使用 javax.tool JavaCompiler,如下所述: 如何以编程方式编译和实例化 Java 类?
此外,我正在使用 StandardJavaFileManager 向编译器指定我的本地类路径和我正在编译的 java 文件。
所需的依赖项已由自定义系统类加载器加载,出于安全原因,无法将其写入光盘以提供给编译器的类路径。
有没有办法让 ToolProvider.getSystemJavaCompiler() 从标准 oracle JDK 返回的 JavaCompiler 使用由我的自定义类加载器加载的类文件而不将它们写入光盘?我也愿意根据需要扩展 JavaCompiler 或 JavaFileManager。
到目前为止,我想出的唯一选择是使用反射将依赖项创建为磁盘上的存根 java 文件,编译它们,并将它们提供给 JavaCompiler。我不关心这个选项,因为它看起来很麻烦,而且由于依赖关系非常复杂,所以很困难。
我看过这些问题:
使用 javax.tools.JavaCompiler 在内存中完全编译代码
如何将 JDK6 ToolProvider 和 JavaCompiler 与上下文类加载器一起使用?
然而,这些解决方案处理动态编译,但似乎没有解决仅内存依赖问题。
c# - c# CompileAssemblyFromSource 比 Visual Studio 慢
我有一个通过 CompileAssemblyFromSource 方法编译的简单类(600 行)。
此方法需要超过 1 分钟才能完成,我尝试直接在 Visual Studio 中编译代码,不到一秒...
怎么了?如何加快动态编译?
有一些我可以尝试的选项?
谢谢您的帮助。
angular - Angular2应用程序的静态与动态引导
在 angular2 RC5 中,我们通过引导应用程序的主模块来启动应用程序,并且 Angular 在针对浏览器时提供了两个引导选项。可以选择动态引导或静态。
文档提到静态,生成较小的应用程序,因此有性能提升,但我不清楚何时最好使用每种方法,哪种方法更适合生产,以及使用动态编译有什么好处。有人可以解释吗?
compilation - 如何使用同一个应用程序(Xamarin Forms)定位多个客户?
=> Xamarin 表单
=> 在 Mac 上使用 Xamarin Studio(但我也可以访问 Visual Studio)
想象一个带有图像(客户徽标)、登录(入口控制)、密码(入口控制)和登录按钮的通用登录应用程序。
我想为多个客户(从 1 到 99)构建这个完全相同的应用程序。每个应用程序将在以下方面有所不同:
- 名称(应用名称和应用内的多个标签),
- 徽标(应用程序中用于访问 Web 上的图像地址的图像控件),
- 连接字符串(这将是应用程序中的一个常量),
- 应用程序的主要颜色。
我想过使用资源(.resx)来做这件事,或者可能是某种编译指令。但我不确定如何正确地做到这一点。
先感谢您!
c# - 如何从 UWP 中的字符串执行代码?
我有来自外部(后端服务器)的简单代码片段,基本上是简单的数学,我想在 Windows 商店/Windows 手机通用应用程序中执行。此代码更改我的一个类的静态字段的状态(将其值设置为某些数字)。有没有办法从 Windows Store / UWP 应用程序中的字符串执行代码?我知道 CSharpCodeProvider,但它在 UWP 中似乎不存在。就像最有用的东西一样。
angular - Angular 2 动态组件双向绑定
请帮助我了解如何进行从父级到动态创建的组件的双向数据绑定。
这是父组件部分:
动态创建的组件:
父母或孩子的任何价值变化都不会相互影响。对我来说,我没有看到任何进行数据绑定的代码行,这并不奇怪。
请帮助我或给我一个正确的挖掘方法。
谢谢你。
angular - 无法加载转译器转译 http://localhost:3000/node_modules/ng-dynamic/index.js
我已经安装了 ng-dynamic 但无法继续使用。我不断在控制台中收到此错误。找不到任何修复。试图在 systemjs.config.js 文件中以不同的方式引用:
'ng-dynamic': 'npm:ng-dynamic/index.js'
'ng-dynamic': 'node_modules/ng-dynamic/index.js'
'ng-dynamic': ' https://unpkg.com/ng-dynamic@2.0.0/index.js '
什么问题?
错误:
java - 在运行时在 Web 应用程序的特定位置创建类文件
我试图制作一个应用程序,我可以在其中修改已经编写的代码,在 Web 应用程序中编译和运行相同的代码。
例如,我有一个 java 文件,编译它但在执行过程中我发现有一些错误,我在应用程序中更改它,编译新代码,然后使用新编写的代码。
我想的方法是使用JavaCompiler。
现在我能够找到很多示例,并且我能够成功地生成类文件并在运行时加载它。
但是当我尝试在 Web 应用程序中执行此操作时,它会在 Eclipse 根目录中创建类文件。
我想在某个位置编译类文件(最好是构建/类....等)
欢迎任何建议!
谢谢 !
c# - 动态编译代码c#时命名空间System中不存在类型或命名空间Windows
我需要在我的 Winform 应用程序中动态编译一些代码来执行用户编写的 C# 代码。
为了进行一些测试,我编写了这个函数:
但是当我执行它时,我得到了这个错误:
系统命名空间中不存在类型或命名空间 Windows(缺少程序集引用?)
如果有人有任何想法?
先感谢您 !
java - 模型和存储库的动态生成
我动态生成 .java 文件模型、存储库,并将它们编译成 .class 格式。我静态地使用@EntityScan 和@EnableJpaRepositories 来扫描包。是否可以动态使用 .class 文件来初始化模型和存储库?如果这是不可能的,我是否可以在程序的同一周期中以编程方式编译并扫描动态生成的 Java 文件?