为Android应用程序安装NewRelic移动代理

时间:2013-03-27 18:02:16

标签: android newrelic

我正在尝试为Android应用安装NewRelic的移动代理。我按照他们的指示,设置了NEWRELIC_HOME(指向代理目录)和ANDROID_HOME(指向Android SDK位置)。当我从应用程序的目录(如建议)运行nrandroid-setup时,我收到以下错误:

Exception in thread "main" java.lang.NoClassDefFoundError: com/android/utils/ILogger
Caused by: java.lang.ClassNotFoundException: com.android.utils.ILogger
        at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
Could not find the main class: com.newrelic.agent.install.Main.  Program will exit.
error: java returned a non-zero status code

我已经看过他们的安装视频,而且非常简单,所以不确定为什么我的安装不起作用(唯一不同的是,我在64位Windows 7下运行,他们使用的是Mac)

3 个答案:

答案 0 :(得分:4)

我认为您可能已经使用New Relic打开了一张票,但在之前的实例中,通过检查您的环境变量并更新SDK来解决此问题(我包括更新New Relic监控SDK以获得良好的衡量标准,但它不太可能是原因)

1)验证您是否已声明NEWRELIC_HOME和ANDROID_HOME,通常是通过运行'export'命令来确保声明两者。然后确保您可以根据这些变量进行导航,并看到它们可以找到正确的位置。如果您仍然遇到问题,请在回复中包含“导出”的结果。

PowerShell中的

使用Get-ChildItem Env:

在终端使用中export

来自cmd的

使用SET

2)更新您的Android SDK

要将Eclipse的ADT插件更新到最新版本,请按照下列步骤操作:

选择帮助>软件更新>查找并安装....

选择“搜索当前安装的功能的更新”,然后按“完成”。

如果有任何ADT更新,请选择并安装。

3)确保您拥有最新版本的适用于Android的移动应用程序New Relic。

我们的Android代理的最新版本可通过登录rpm.newrelic.com并访问Mobile>“查看说明”或“添加新的移动应用”来获取

值得注意的是,我们的需求页面上没有列出Android SDK,我们只是意识到这会导致一些用户遇到麻烦,我认为步骤2)将解决问题。一旦我们对所有测试和验证进行了测试,我也将根据该要求更新我们的文档。

答案 1 :(得分:2)

基本上,Toby所说的所有内容都会检查您正在运行的Java版本。在我的情况下,我无法用java 1.6.0_32构建,它只在我升级到版本1.7.0_13时才有效

答案 2 :(得分:2)

你必须改变你的android sdk它可能是becoz你的android sdk_> tools-> sdklibs.jar没有记录器类请用最新的更改sdk我已经更改了sdk并解决了我的问题。