1

当我这样做时,当我运行 build.xml 并部署时它不会编译,

我想这样做,因为它看起来比使用 JournalArticleLocalServiceUtil.addArticle 的巨大方法调用要好得多。

JournalArticle journalArticle = new JournalArticleImpl();
journalArticle.setDescription(description);

有谁知道在 Liferay 6 中是否有可能?

编辑:这是我得到的输出:

Buildfile: C:\opt\liferay-six1-dev\code\portlets\migration-portlet\build.xml
compile:
merge:
compile-java:
    [javac] Compiling 1 source file to C:\opt\liferay-six1-dev\code\portlets\migration-portlet\docroot\WEB-INF\classes
    [javac] C:\opt\liferay-six1-dev\code\portlets\migration-portlet\docroot\WEB-INF\src\com\liferay\migration\importdata\JournalArticleImport.java:138: cannot find symbol
    [javac] symbol  : class JournalArticle
    [javac] location: class com.liferay.migration.importdata.JournalArticleImport
    [javac]     private JournalArticle createJournalArticle(ExportedJournalArticle article) {
    [javac]             ^
    [javac] C:\opt\liferay-six1-dev\code\portlets\migration-portlet\docroot\WEB-INF\src\com\liferay\migration\importdata\JournalArticleImport.java:142: cannot find symbol
    [javac] symbol  : class JournalArticle
    [javac] location: class com.liferay.migration.importdata.JournalArticleImport
    [javac]         JournalArticle journalArticle = new JournalArticleImpl();
    [javac]         ^
    [javac] C:\opt\liferay-six1-dev\code\portlets\migration-portlet\docroot\WEB-INF\src\com\liferay\migration\importdata\JournalArticleImport.java:142: cannot find symbol
    [javac] symbol  : class JournalArticleImpl
    [javac] location: class com.liferay.migration.importdata.JournalArticleImport
    [javac]         JournalArticle journalArticle = new JournalArticleImpl();
    [javac]                                             ^
    [javac] 3 errors

BUILD FAILED
C:\opt\liferay-six1-dev\code\build-common-plugin.xml:403: The following error occurred while executing this line:
C:\opt\liferay-six1-dev\code\build-common.xml:94: Compile failed; see the compiler error output for details.

Total time: 1 second
4

2 回答 2

2

正如 Jon 提到的,如果您使用的是 Plugins SDK,则不会复制实现类的库/jar。不幸的是,您不能直接从插件创建 JournalArticle 对象,您必须使用 JournalArticleLocalServiceUtil 来创建对象。

于 2012-01-26T17:46:57.133 回答
1

好的,现在我们遇到了编译器故障,看起来您只是在类路径上没有正确的库。

此外,看起来您正在 com.liferay 包下创建自己的类 - 除非您正在Liferay 构建代码,否则您不应该这样做。如果你只是在构建使用Liferay 的代码,你应该在你自己的组织包下构建它。

于 2012-01-25T10:01:59.813 回答