gpt4 book ai didi

java - Sun CodeModel 将类与 JInspiration.arg 一起使用

转载 作者:行者123 更新时间:2023-12-02 04:18:33 25 4
gpt4 key购买 nike

我正在使用 sun 的代码模型 (2.4.1) 类来生成代码。如何将类传递给 JIncation.arg?我试图生成的代码是:

JAXBContext jc;
jc = JAXBContext.newInstance(NaturalLanguageUsage.class);

我正在运行的代码是:

JClass importJAXBContext = codeModel.directClass(javax.xml.bind.JAXBContext.class.toString());
JType typeJAXBContext = codeModel._ref(javax.xml.bind.JAXBContext.class);
JVar varJc = block.decl(typeJAXBContext, "jc");

JInvocation invokeJAXBContext = block.staticInvoke(importJAXBContext, "newInstance");
invokeJAXBContext.arg(??); // how do I pass NaturalLanguageUsage.class

我想要制作什么:

JAXBContext jc;
jc = JAXBContext.newInstance(NaturalLanguageUsage.class);

或者更好:

JAXBContext jc = JAXBContext.newInstance(NaturalLanguageUsage.class);

最佳答案

    JClass importJAXBContext = codeModel.ref(javax.xml.bind.JAXBContext.class);
JVar varJc = block.decl(importJAXBContext, "jc");

JClass naturalLangClassRef = codeModel.ref(NaturalLanguageUsage.class);

JInvocation invokeJAXBContext = importJAXBContext.staticInvoke("newInstance");
invokeJAXBContext.arg(naturalLangClassRef.dotclass());

block.assign(varJc, invokeJAXBContext);

在一行中生成声明和赋值:

    JVar varJc = block.decl(importJAXBContext, "jc", invokeJAXBContext);

关于java - Sun CodeModel 将类与 JInspiration.arg 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33046160/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com