带有播放框架的服务器端 highchart

Posted

技术标签:

【中文标题】带有播放框架的服务器端 highchart【英文标题】:serverside highchart with play framework 【发布时间】:2012-01-04 21:05:34 【问题描述】:

我试图在我的游戏框架应用中使用 highchart 的服务器端 API 生成图表。

然而最基本的错误发生了:

The file /app/controllers/Application.java could not be compiled. Error raised is : org.one2team.highcharts.shared.ChartOptions cannot be resolved

由于线路:

import org.one2team.highcharts.shared.ChartOptions;

我已将所有需要的 jar 复制到应用程序的 lib 目录中。

不知道我错过了什么。

编辑 1:我为从 github.com/one2team/highcharts-serverside-export 下载的代码创建了一个 jar 文件。 当我使用完整的类名(例如“org.one2team.highcharts.shared.ChartOptions”而不仅仅是 ChartOptions 时,编译会顺利进行。

在运行时,我看到了错误 NoClassDefFoundError 发生:org/one2team/highcharts/server/JSMHighchartsFactory

*play.exceptions.JavaExecutionException: org/one2team/highcharts/server/JSMHighchartsFactory

    at play.mvc.ActionInvoker.invoke(ActionInvoker.java:229)

    at Invocation.HTTP Request(Play!)

引起:java.lang.NoClassDefFoundError: org/one2team/highcharts/server/JSMHighchartsFactory

    at examples.SamplesFactory.<init>(SamplesFactory.java:354)

    at examples.SamplesFactory.<clinit>(SamplesFactory.java:357)*

这意味着它能够解析 SamplesFactory 类,但不能解析 JSMHighchartsFactory。 我确实在 jar 文件中找到了这个。 这是否意味着在运行时,它没有被选中?

感谢您的帮助。

【问题讨论】:

您是否从github.com/one2team/highcharts-serverside-export 下载了one2team.highcharts 源?我只看到源 java 文件,没有 jars。你在哪里找到的? 是的。我从 github.com 下载了源代码。我能够运行下载源中提供的示例。我提到的 jar 文件是其 lib 目录中的文件 - ../highcharts-serverside-export/tree/master/lib。我假设我需要自己为它们创建罐子。所以我开始了创建播放框架模块的道路。我在那里遇到了一些问题。我认为这可能是由于我的系统上没有安装“ant”。尝试安装它,但其中存在一些安装错误 - 从存储库获取“javax.media:jai-core”的 POM 时出错 【参考方案1】:

您是如何添加 HighCharts 库的?直接在你的IDE中?如果是这样,我会试试这个:

play clean yourProject

然后:

play eclipsify yourProject

之后,您可以尝试再次运行您的应用程序,甚至在 Eclipse 中再次导入整个项目。

【讨论】:

我将依赖的 jars 复制到了应用程序的 lib 目录中。我还做了 eclipsify 并将它们添加到 eclipse 中。然而,正如 Mark 指出的那样,这些 jar 不是“highcharts-serverside-export”生成的 jar。下一步是使用常规方法创建 jar,然后检查 Class 是否已解析!

以上是关于带有播放框架的服务器端 highchart的主要内容,如果未能解决你的问题,请参考以下文章

highcharts基本配置和使用highcharts做手机端图标

react服务端渲染框架

js实现svg图形转存为图片下载[转]

Unity播放服务器端视频 发布到Android移动端

服务器端更改客户端发送的日期/时间

带有 DRM 密钥轮换的 YouTube 流只能播放 2 分钟