我的问题纯粹是理论性的,如果这是一个肯定的答案,我希望稍后再加以落实。
是否可以使用Roslyn创建代码分析并将其存储在dll中,然后在基于JVM的项目中使用该dll中的内容?我知道Visual和C#语言有一些相似之处。但是,由于目前只能分析C#和VB (我认为F#暂时被搁置了),当具有确切的功能(例如循环)时,它是否可以将从C#到Java的代码分析应用到Java。
从这个职位中,我了解到可以使用Java调用dll。我很高兴知道,当我使用VB或C#时,当我遍历语法树时,它可以对Java甚至更类似于C#的Kotlin做同样的操作。
发布于 2015-04-11 00:56:20
我想你误解了罗斯林的角色。其目的是向语言开发工具的作者公开C#和VB.NET编译器在程序结构方面的丰富信息。引用埃里克·利珀特
Roslyn是一个类库,可以从C#、VB或其他托管语言中使用。其目的是实现对C#和VB代码的分析。
和
它不是客户自己扩展C#或VB语言的机制,而是一种分析现有语言的机制。
Roslyn肯定不是一种分析Java的机制,因为它不是为分析Java而编写的。它的编写分析了一种有点类似的语言C# (这种相似是设计上的,语言作者希望它对现有的C/C++/Java程序员有点熟悉)。然而,除了最琐碎的Java片段之外,所有这些片段都不是有效的C#。它不仅仅是诸如泛型约束和通配符等深奥的特性,而且像Equals这样的核心方法在这两种方法中都有不同的外壳。Roslyn不太可能对任何规模或复杂性的Java片段进行分析。
https://stackoverflow.com/questions/29552482
复制相似问题