我知道有很多关于javahl问题的Eclipse / Subclipse问题。在没有javahl问题的情况下,我一直在使用Eclipse / Subclipse很长时间。
我现在遇到了同样的问题。
我刚刚升级到Java 7:
$ java -version
java version "1.7.0_65"
Java(TM) SE Runtime Environment (build 1.7.0_65-b17)
Java HotSpot(TM) 64-Bit Server VM (build 24.65-b04, mixed mode)
我也升级到Eclipse Luna 4.4.0并安装了Subclipse。但是在创建远程存储库并尝试在SVN Repository Exploring透视图中浏览它之后,我在Eclipse .log错误日志文件中看到了这一点:
java.lang.NoClassDefFoundError: Could not initialize class org.apache.subversion.javahl.SVNClient
at org.tigris.subversion.svnclientadapter.javahl.JhlClientAdapter.<init>(JhlClientAdapter.java:57)
at org.tigris.subversion.clientadapter.javahl.Activator.getAdapter(Activator.java:64)
at org.tigris.subversion.clientadapter.Activator.getClientAdapter(Activator.java:70)
at org.tigris.subversion.subclipse.core.SVNClientManager.getAdapter(SVNClientManager.java:127)
at org.tigris.subversion.subclipse.core.SVNClientManager.getSVNClient(SVNClientManager.java:94)
at org.tigris.subversion.subclipse.core.SVNProviderPlugin.getSVNClient(SVNProviderPlugin.java:462)
at org.tigris.subversion.subclipse.core.repo.SVNRepositoryLocation.getSVNClient(SVNRepositoryLocation.java:257)
at org.tigris.subversion.subclipse.core.resources.RemoteFolder.getMembers(RemoteFolder.java:164)
at org.tigris.subversion.subclipse.core.resources.RemoteFolder.members(RemoteFolder.java:260)
at org.tigris.subversion.subclipse.ui.operations.FetchMembersOperation.execute(FetchMembersOperation.java:41)
at org.tigris.subversion.subclipse.ui.operations.SVNOperation.run(SVNOperation.java:90)
at org.tigris.subversion.subclipse.ui.repository.model.SVNRepositoryRootElement.fetchDeferredChildren(SVNRepositoryRootElement.java:73)
at org.eclipse.ui.progress.DeferredTreeContentManager$1.run(DeferredTreeContentManager.java:238)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
见下图,看看我用Subclipse安装的组件:
关于SVNKit客户端适配器(不是必需的),我已经安装了Subclipse,无论是否选择了这个组件,在这两种情况下我都看到了相同的javahl.SVNClient错误。
如何解决此问题?
顺便说一句,我想也许我会给Subversive一个机会。 Eclipse 4.4 udpates软件站点(http://download.eclipse.org/eclipse/updates/4.4)中没有Subversive,所以我尝试了Eclipse Marketplace Client。通过市场安装我收到以下错误:
The following solutions are not available: Subversive: SVN Team Provider 2.0
有没有人有Eclipse和Subclipse或Subversive工作?我需要采取哪些步骤来实现这一目标?
UPDATE 附件是空SVN界面客户端下拉列表的屏幕截图。
谢谢!
答案 0 :(得分:8)
我认为可以在Polarion网站上找到解决方案(Subversive插件使用的SVN连接器的开发人员) http://www.polarion.com/products/svn/subversive/download.php?utm_source=eclipse.org&utm_medium=link&utm_campaign=subversive
它说
颠覆性更新站点是Luna Update Site的一部分。
安装: 在主菜单上,选择“帮助”&gt;安装新软件。出现可用的软件对话框。 在“工作”列表中,选择Luna - http://download.eclipse.org/releases/luna/。软件列表 包出现了。
展开Collaboration节点,滚动列表并选择Subversive features
根据需要检查对话框中的其他选项,然后单击“下一步”按钮。 “安装详细信息”屏幕将显示在对话框中。
单击“下一步”按钮,接受许可并单击“完成”。 Subversive将下载并安装。
建议接受重新启动Eclipse的选项。
http://community.polarion.com/projects/subversive/download/eclipse/4.0/luna-site/ - [必需]颠覆SVN连接器
http://community.polarion.com/projects/subversive/download/integrations/luna-site/ - [可选]颠覆性积分
答案 1 :(得分:2)
我想你没有jaha-hl需要的库。这取决于您的操作系统。为什么不尝试使用SVN Kit而不是JavaHL?您可以在窗口中更改提供商 - &gt;偏好 - &gt;团队 - &gt;颠覆。
答案 2 :(得分:1)
我在OSX Mavericks上使用您正在使用的相同Subclipse版本运行Eclipse 4.4(Luna)。就我而言,JavaHL库是通过Homebrew安装的。
我不认为它与你的问题有关,但我的环境的不同之处在于我正在使用Java 8.事后看来它没有意义但是我有这样的回忆,Eclipse 4.4说我必须升级Java for它要发布。也许它说我至少需要Java 7而我只是选择安装Java 8.不记得了。
由于发现了NoClassDef,我的错误会使您的ATM错误。当您的库出现问题时,这不会是您常见的错误。
当您执行Team&gt;时,您在首选项中看到了什么? SVN?下拉列表是空的?这意味着Eclipse插件甚至没有加载,因为通常你会在列表中看到一条带有(未安装)消息的条目。你甚至没有看到这似乎涉及更大的错误。
不确定要检查什么,但我会在日志和Eclipse安装详细信息屏幕上查看是否存在一个或多个插件未激活的问题。没有解释为什么会发生这种情况。
答案 3 :(得分:1)
我发现安装颠覆器及其连接器的最佳方法如下:
然后右键单击Project Explorer并选择import,然后选择其他。从新菜单中选择SVN的SVN-Project,这将要求安装连接器。选择所需的连接器并进行安装。
HTH
答案 4 :(得分:0)
我遇到了同样的问题:“无法加载默认的svn客户端”
'preferences / team / svn'中的空组合
我确实喜欢这样做:
窗口&gt;安装新软件&gt; http://subclipse.tigris.org/update_1.10.x/
重新检查所有复选框,然后转到。 重启后,没关系
答案 5 :(得分:0)
我不知道这是否是新链接,但您可以将安装图标从Eclipse Marketplace Subclipse站点拖放到Eclipse Luna工作区以进行安装。