服务生成器给生命线带来错误7
问题描述:
我在Liferay 7上工作。我是Liferay的新手,我遇到了一个我花费太多时间的问题。服务生成器给生命线带来错误7
我有一个portlet,我决定创建一个Service Builder(名为“Employee”)。这里是我的service.xml中:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE service-builder PUBLIC "-//Liferay//DTD Service Builder 7.0.0//EN" "http://www.liferay.com/dtd/liferay-service-builder_7_0_0.dtd">
<service-builder package-path="com.test">
<author>sachin.singh</author>
<namespace>crud</namespace>
<entity name="Employee" table="user" local-service="true" remote-service="true">
<column name="iduser" type="int" primary="true" id-type="increment"/>
<column name="name" type="String" />
<column name="secret_code" type="String" />
</entity>
</service-builder>
,当我使用Liferay的服务构建构建我在罐子库收到此错误
[copy] Copying 1 file to D:\tools\com.liferay.portal.plugins.sdk-1.0.11\portlets\firstLiferay-portlet\docroot\WEB-INF\classes
[copy] Copied 3 empty directories to 2 empty directories under D:\tools\com.liferay.portal.plugins.sdk-1.0.11\portlets\firstLiferay-portlet\docroot\WEB-INF\classes
[jar] Building MANIFEST-only jar: D:\tools\com.liferay.portal.plugins.sdk-1.0.11\portlets\firstLiferay-portlet\service-builder-classpath.jar
[delete] Deleting: D:\tools\com.liferay.portal.plugins.sdk-1.0.11\portlets\firstLiferay-portlet\service-builder-classpath.jar.manifest
[java] Java Result: 1
[delete] Deleting: D:\tools\com.liferay.portal.plugins.sdk-1.0.11\portlets\firstLiferay-portlet\service-builder-classpath.jar
[echo] java.lang.NoClassDefFoundError: com/thoughtworks/qdox/model/JavaMethod
[echo] at java.lang.Class.getDeclaredMethods0(Native Method)
[echo] at java.lang.Class.privateGetDeclaredMethods(Class.java:2701)
[echo] at java.lang.Class.privateGetMethodRecursive(Class.java:3048)
[echo] at java.lang.Class.getMethod0(Class.java:3018)
[echo] at java.lang.Class.getMethod(Class.java:1784)
[echo] at sun.launcher.LauncherHelper.validateMainClass(LauncherHelper.java:544)
[echo] at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:526)
[echo] Caused by: java.lang.ClassNotFoundException: com.thoughtworks.qdox.model.JavaMethod
[echo] at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
[echo] at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
[echo] at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335)
[echo] at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
[echo] ... 7 more
[echo] Error: A JNI error has occurred, please check your installation and try again
[echo] Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=512m; support was removed in 8.0
[echo] Exception in thread "main"
我检查和交叉核实,所有罐子在那里。
答
尤其是当你是新手,我建议你再试一次,并使用Liferay的工作空间,而不是(不建议使用)插件-SDK的。所有样本(here's one for service builder)都基于此,plugins-sdk应主要用于将现有旧版插件迁移到最新版本。
我不确定你的屏幕截图显示了什么 - 如果它是所有捆绑的罐子,那么它看起来很可怕。在OSGi捆绑包中你应该只有很小的插件,并且它看起来像那些依赖关系太多了。
感谢您的答复@Olaf科克 是的,这是我的捆绑罐子但是从SDK-插件,来到我没加manually.Will尽量减少:-) –
我已经添加在WEB-INF所有罐子/现在我得到这个错误**异常在线程“主”java.lang.NoSuchMethodError:freemarker.template.Configuration.getVersion()Lfreemarker /模板/版本; **你认为我必须张贴另一个问题? –