问题标签 [sun-codemodel]

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.

0 投票
1 回答
151 浏览

java - 退出后保存 Jcodemodel 对象

我对 JCodeModel (SUN) 有疑问。我的程序每天都在运行,我想在当前运行之前创建的类中添加一些功能。

JcodeModel 支持这个吗?如果没有,有什么选项可以将 JCodemodel 对象保存在外部文件中,加载以前的 JcodeModel,然后添加新功能?

谢谢。

0 投票
2 回答
1853 浏览

java - JCodeModel - How to chain invoke methods

I am trying to figure out how to use a loop to build a JExpression that I can use in an .assign() call. I know that you can do something like JExpr.invoke("methodA").invoke("methodB") with JCodeModel, but I want to be able to add each .invoke() method based on a list of method names. Does anyone know how to do this?

Example of my Generator code [this is assuming that I have modified the ArrayList.add() method to return the ArrayList]:

Example of what I am trying to generate:

My problem is that this method doesn't chain the invoke methods, but replaces them so the generated code looks like this:

0 投票
1 回答
134 浏览

java - 如何生成类型 List

SunCodeModel可以List<? extends Number>使用model.ref(List.class).narrow(model.ref(Number.class).wildcard()).

但是,我搜索了文档,但找不到生成List<? super Number>.

任何帮助,将不胜感激。

0 投票
1 回答
739 浏览

java - Codemodel 不生成静态导入

JCodeModel 生成一个import语句来代替import static. 例如,我有一个类,import nz.co.cloudm.cloudserv.api.pojos.core.file.attachment.Attachment.Status而不是import static nz.co.cloudm.cloudserv.api.pojos.core.file.attachment.Attachment.Status编译器抛出错误。正如您在 import 语句中看到的那样,该类Status是一个存在于该类中的内部枚举。Attachment

您知道我可以使用代码模型实现导入静态的任何方法吗?

或者如何让成员使用类限定名?

0 投票
1 回答
224 浏览

java - 如何在没有完全限定名称的另一个生成类中定义java codeModel生成类

我正在使用 java codeModel 来生成休眠实体类。

在表有复合键的地方,我正在生成一个@Embeddable类,然后我需要在我的实体类中定义一个字段。

目前这个复合键类被定义为一个完全限定的名称,在我的实体类中没有 java import 语句:例如

我如何告诉 codeModel 不要完全限定我的 CompoundKey 字段?例如

我像这样创建我的实体类

我像这样创建我的复合键类

我像这样在实体类中创建 CompoundKey 字段

0 投票
1 回答
151 浏览

java - 使用 CodeModel 使 ForEach 成为最终版本

com.sun.codemodel用来生成一些java实体对象

我想生成一个for循环如下: -

但是我只能管理这个

是否可以final在 ForEach 生成的语句中添加?

0 投票
2 回答
445 浏览

java - 如何使用 Java codeModel 为数组的特定索引赋值

你如何使用com.sun.codemodel来生成这个 java 语句?

我尝试使用com.sun.codemodel.JArrayCompRefviacomponent()但是我 com.sun.codemodel.JArrayCompRef在尝试调用方法时不可见assign()

声明如下com.sun.codemodel.JArrayCompRef:-

实现 JAAssignmentTarget

0 投票
1 回答
392 浏览

java - 你怎么能等到 com.sun.codemodel.JCodeModel.build() 完成

com.sun.codemodel.JCodeModel用来生成近 1000 个类,每个类都有关联的 JUnit。

我还生成了一个执行单个 JUnit 测试用例的 JUnit 测试套件。

为了完成这个代码生成项目,我想以编程方式使用final Result result = JUnitCore.runClasses(AllTests.class);.

我遇到的困难是 JUnit 测试套件的执行与代码生成不同步。我需要能够检测com.sun.codemodel.JCodeModel.build()方法何时完成我的代码生成,然后才执行 JUnit 测试套件。

我怎么知道com.sun.codemodel.JCodeModel.build()方法何时完成?

0 投票
1 回答
262 浏览

java - 如何将 CodeModel 表达式强制括在括号中?

我想使用 Sun 的 CodeModel 生成一些非常常见的代码

但是,当我写:

我明白了

注意括号不见了。如何强制括号出现在代码中?

0 投票
1 回答
433 浏览

sun-codemodel - 如何缩小匿名类?

我想生成一些如下代码:

我尝试了以下方法:

下面出现异常,由“anonymousSomeClass.narrow(jClass)”引起。如果我删除'.narrow(jClass)',一切都会好起来的。

谢谢。