Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在GWT maven项目中包括gwtjsonrpc jar_Json_Maven_Gwt_Serialization_Rpc - Fatal编程技术网

在GWT maven项目中包括gwtjsonrpc jar

在GWT maven项目中包括gwtjsonrpc jar,json,maven,gwt,serialization,rpc,Json,Maven,Gwt,Serialization,Rpc,我正在尝试优化GWT Web应用程序的序列化。 该应用程序基于maven,有3个模块(project/project gwt/project gwt shared),其中一个方法必须向客户端返回大量信息。此方法向我发回大量相同DTO的列表,在序列化和反序列化过程中会消耗大量内存和时间。 我们制作了一个定制的\u dtoserizator,但尽管时间更快,但我们认为它可以改进。 搜索解决方案时,我发现这是为GWT工作的JSON-RPC 1.1的实现。它是集成的,所以我决定试试。 我下载了gwtjs


我正在尝试优化GWT Web应用程序的序列化。
该应用程序基于maven,有3个模块(project/project gwt/project gwt shared),其中一个方法必须向客户端返回大量信息。此方法向我发回大量相同DTO的列表,在序列化和反序列化过程中会消耗大量内存和时间。
我们制作了一个定制的\u dtoserizator,但尽管时间更快,但我们认为它可以改进。

搜索解决方案时,我发现这是为GWT工作的JSON-RPC 1.1的实现。它是集成的,所以我决定试试。
我下载了gwtjsonrpc-1.3.jar,并尝试使用以下工具安装它:

mvn install:install-file -Dfile=gwtjsonrpc-1.3.jar 
    -DgroupId=com.google.gwtjsonrpc -Dpackaging=jar -DartifactId=gwtjsonrpc 
    -Dversion=1.3 -Dclassifier=sources
我把它放在我所有的POM里

<dependency>
    <groupId>com.google.gwtjsonrpc</groupId>
    <artifactId>gwtjsonrpc</artifactId>
    <version>1.3</version>
</dependency>   
<dependency>
    <groupId>com.google.gwtjsonrpc</groupId>
    <artifactId>gwtjsonrpc</artifactId>
    <version>1.3</version>
    <classifier>sources</classifier>
    <type>jar</type>
</dependency>
命令将jar[INFO]安装到C:\Users\me\Desktop\project\version\pom\gwtjsonrpc-1.3.jar到C:\Users\me.m2\repository\com\google\gwtjsonrpc\gwtjsonrpc\1.3\gwtjsonrpc-1.3-sources.jar

但是在gwt模块的编译中,它给了我一个错误,我不知道如何解决

[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] GWT Module com.google.gwtjsonrpc.GWTJSONRPC not found in project sources or resources.

[INFO] ------------------------------------------------------------------------
[INFO] Trace
org.apache.maven.lifecycle.LifecycleExecutionException: GWT Module com.google.gwtjsonrpc.GWTJSONRPC not found in project sources or resources.
        at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:719)
        at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:556)
   ...
Caused by: org.apache.maven.plugin.MojoExecutionException: GWT Module com.google.gwtjsonrpc.GWTJSONRPC not found in project sources or resources.
        at org.codehaus.mojo.gwt.shell.CompileMojo.compilationRequired(CompileMojo.java:447)
        at org.codehaus.mojo.gwt.shell.CompileMojo.compile(CompileMojo.java:308)
        at org.codehaus.mojo.gwt.shell.CompileMojo.doExecute(CompileMojo.java:237)
        at org.codehaus.mojo.gwt.shell.AbstractGwtShellMojo.execute(AbstractGwtShellMojo.java:142)
        at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:490)
        at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:694)
        ... 17 more
Caused by: org.codehaus.mojo.gwt.utils.GwtModuleReaderException: GWT Module com.google.gwtjsonrpc.GWTJSONRPC not found in project sources or resources
.
        at org.codehaus.mojo.gwt.AbstractGwtModuleMojo.readModule(AbstractGwtModuleMojo.java:205)
        at org.codehaus.mojo.gwt.GwtModule.getLocalInherits(GwtModule.java:189)
        at org.codehaus.mojo.gwt.GwtModule.getInherits(GwtModule.java:149)
        at org.codehaus.mojo.gwt.GwtModule.getEntryPoints(GwtModule.java:114)
        at org.codehaus.mojo.gwt.shell.CompileMojo.compilationRequired(CompileMojo.java:361)
        ... 22 more

我认为您的问题在于您安装的是一个JAR,而不是2个:一个没有分类器(
gwtjsonrpc-1.3.JAR
),另一个带有分类器
源代码(实际上在Maven中,它是相当类型
java源代码
,而不是类型
JAR
)。您可以使用以下命令:

mvn install:install-file \
   -DgroupId=gwtjsonrpc -Dpackaging=jar -DartifactId=gwtjsonrpc -Dversion=1.3 \
    -Dfile=gwtjsonrpc-1.3.jar -Dsources=gwtjsonrpc-1.3-sources.jar
哦,在构建模块时,无需安装文件


注意,您可以在Maven repo中的GAV
gwtjsonrpc:gwtjsonrpc:1.3
下找到gwtjsonrpc,因此只需将
添加到POM或在存储库管理器中代理它,就不用手动安装JAR了。至少你会有正确的POM和适当的依赖关系

我认为您的问题在于您安装的是一个JAR,而不是2个:一个没有分类器(
gwtjsonrpc-1.3.JAR
),另一个带有分类器
源代码
(实际上在Maven中是类型
java源代码
,而不是类型
JAR
)。您可以使用以下命令:

mvn install:install-file \
   -DgroupId=gwtjsonrpc -Dpackaging=jar -DartifactId=gwtjsonrpc -Dversion=1.3 \
    -Dfile=gwtjsonrpc-1.3.jar -Dsources=gwtjsonrpc-1.3-sources.jar
哦,在构建模块时,无需安装文件


注意,您可以在Maven repo中的GAV
gwtjsonrpc:gwtjsonrpc:1.3
下找到gwtjsonrpc,因此只需将
添加到POM或在存储库管理器中代理它,就不用手动安装JAR了。至少你会有正确的POM和适当的依赖关系

正如您所建议的,我将gerrit存储库和依赖项添加到POM中。但它似乎没有导入源代码,因为它给了我以下错误:[错误]第12行:没有可用于com.google.gwtjsonrpc.common.AsyncCallback类型的源代码;您是否忘记继承所需的模块?有什么想法吗?你把
gwtjsonrpc:gwtjsonrpc:1.3
gwtjsonrpc:gwtjsonrpc:java source:1.3
都添加到poms:gwtjsonrpc gwtjsonrpc 1.3和gwtjsonrpc 1.3源中了吗?这是错的吗?缺少什么?您是否删除了以前在本地repo中安装的
gwtjsonrpc:gwtjsonrpc
?我已删除了所有。把所有的脏东西和罐子都清理干净。同样的错误。“文件:/C:/Users/me/Desktop/application/2.5.0.0/application gwt/src/main/java/com/company/application/client/Principal.java”中的[ERROR]错误[ERROR]第2358行:没有可用于com.google.gwtjsonrpc.common.AsyncCallback类型的源代码;您是否忘记继承所需的模块?:(正如您所建议的,我将gerrit存储库和依赖项添加到poms中。但它似乎没有导入源代码,因为它给了我以下错误:[错误]第12行:com.google.gwtjsonrpc.common.AsyncCallback类型没有可用的源代码;您是否忘记继承所需的模块?有什么想法吗?您是否同时添加了
gwtjsonrpc:gwtjsonrpc:1.3
gwtjsonrpc:gwtjsonrpc:java源代码:1.3
?我添加到了poms:gwtjsonrpc-gwtjsonrpc-gwtjsonrpc 1.3和gwtjsonrpc-1.3ces这是错误的?缺少什么?您是否删除了以前在本地repo中安装的
gwtjsonrpc:gwtjsonrpc
?我已经删除了所有。清理所有的dir和jar。相同的错误。[错误]文件中的错误:/C:/Users/me/Desktop/application/2.5.0.0/application gwt/src/main/java/com/company/application/client/Principal.java'[错误]第2358行:没有可用于com.google.gwtjsonrpc.common.AsyncCallback类型的源代码;是否忘记继承所需的模块?:(
mvn install:install-file \
   -DgroupId=gwtjsonrpc -Dpackaging=jar -DartifactId=gwtjsonrpc -Dversion=1.3 \
    -Dfile=gwtjsonrpc-1.3.jar -Dsources=gwtjsonrpc-1.3-sources.jar