构建和运行Java 8支持

尚未提供对Java 8的Eclipse支持。 如果要使用它,则必须构建它。 Eclipsepedia的JDT Core / Java8页面包含有关使用Eclipse Java开发工具 (JDT)中不断发展的Java 8支持源来设置开发环境的说明。 说明中缺少一些内容; 待会儿我会回圈并添加它们。

我首先安装了Java Development Kit(JDK)8。对于RPM来说,它看起来并不难。 相反,我只是直接去了源头 。 对于Linux,它是一个tar.gz文件,我刚刚将其解压缩到一个工作目录中。

接下来,我下载了Eclipse SDK的最新里程碑版本(在撰写本文时为4.4M5 )。 这不是一个明确的要求,但我认为这将是一个很好的起点。 我在eclipse.ini文件中配置了“ vm”选项,以使用下载的JDK附带的Java 8 JRE。 我从Luna软件存储库向SDK添加了“ Git Team Provider ”。

JDT分布在少数Git存储库中:

  • JDT核心git://git.eclipse.org/gitroot/jdt/eclipse.jdt.core.git
  • JDT用户界面git://git.eclipse.org/gitroot/jdt/eclipse.jdt.ui.git
  • JDT调试git://git.eclipse.org/gitroot/jdt/eclipse.jdt.debug.git

还需要一些Equinox更新(我相信这主要是为了提供所需的Java 8执行环境)。

在所有存储库中,代码都包含在BETA_JAVA8分支中。 我克隆了所有这些存储库,并使用了方便的“导入所有项目”功能将所有代码自动提取到我的工作区中。

此时,我的Package Explorer包含很多红色标记。 许多插件被配置为由我尚未安装的非常特定的Java版本编译。 所以,我追杀的JDK的Java 1.4 , 5和6 (我已经有Java 7的安装)。 我选择下载自解压档案。

我将它们中的每一个都添加到了首选项的“ Installed JRE”页面中。

配置Java运行时环境(JRE)(和相应的JDK)

配置Java运行时环境(JRE)(和相应的JDK)

然后,我为每个JRE配置了执行环境映射。

这使大多数(但不是全部)红色标记消失了。

按照说明,我下载了Eclipse SDK 4.3.1用作干净的目标平台和API基准 (尽管我怀疑同时使用4.4M5还是可以的)。 坦白说,我不记得在这一步中是否还有更多的红色标记消失了。

尽管仍然有红色标记(似乎是我没有正确配置的测试),我还是决定继续使用它,并设置了启动配置。 它还活着。

使用Java 8运行的Eclipse

使用Java 8运行的Eclipse

我首先修改了lambda表达式 。

简短的版本是针对Java的Eclipse编译器(ECJ)可以很好地处理它们。 内容辅助尚未完全成熟,但是语法正确的lambda表达式可以按预期编译并运行。 从Bugzilla的活动中可以明显看出,它正在快速发展。

作为了解Smalltalk的老家伙,我的第一个直觉是用Java创建类似于Smalltalk的集合。

短暂聊天:

| employees names |
employees := OrderedCollection newadd: (Employee named: 'Wayne');add: (Employee named: 'Joel');add: (Employee named: 'Jon');add: (Employee named: 'Anthony');yourself.
names := employees collect: [:employee | employee name].
output >> an OrderedCollection('Wayne' 'Joel' 'Jon' 'Anthony')

Java 8:

OrderedCollection employees = new OrderedCollection();
employees.add(new Employee("Wayne"));
employees.add(new Employee("Joel"));
employees.add(new Employee("Jon"));
employees.add(new Employee("Anthony"));
OrderedCollection names = employees.collect(employee -> employee.name);
output >> [Wayne, Joel, Jon, Anthony]

稍后再详细介绍。

请注意JDT Core / Java8页面底部的免责声明:

这是一个进展中的工作。 随着对JSR规范的更改,BETA_JAVA8分支的内容将更新。 请仅在测试/评估模式下使用早期访问版本,而不能在实际的开发环境中使用。 如果您需要任何帮助,请通过论坛或Bugzilla与JDT / Core团队联系。

参考: Eclipse提示,技巧和Random Musings博客上的JCG合作伙伴 Wayne Beaton的构建和运行Java 8支持 。

翻译自: https://www.javacodegeeks.com/2014/02/building-and-running-java-8-support.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/365225.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

django异常日志_【python小随笔】Django+错误日志(配置Django报错文件指定位置)...

1: 自定义日志文件.py----------几个文件需要创建日志,就需要重新定义几份#1定义一个日志文件 创建一个操作日志对象loggerfile_1 logging.FileHandler(text_1.log, a, encodingutf-8) # text_1.log 定义日志文件名fmt logging.Formatter(fmt"%(asctime)s - %…

Django之管理权限

什么是权限: 谁对什么资源能做什么操作。 管理权限的实现有很多,这里实现一个最简单的管理权限的实现方式:rbac ( role based access control ) 实现的一个基本思路: 一张user用户表,一张role…

狄克斯特拉 Dijkstra 算法 C#实现

今天在看《算法图解》,看了加权最小路径算法,决定用代码实现一下。 首先是画有向图,在网上找了一下,有不错的开源软件graphviz,该源代码托管在GitLab上。该软件是一个图形可视化软件。 画了一个有向图如下: 画图用的代…

So Easy! 让开发人员更轻松的工具和资源

这篇文章给大家分享让开发人员生活更轻松的免费工具和资源。所以,如果你正在寻找一些为迅速解决每天碰到的设计和开发问题的工具和资源,不要再观望,试试这些工具吧。这些奇妙的工具不仅会加快您的生产,也让你的工作质量提升。 您可…

Java 8:按集合分组

在继续阅读Venkat Subramaniam的“ Java函数式编程 ”时,我到达了介绍Stream#collect函数的那部分。 我们想收集一个人,按年龄分组,并返回一张方便的(年龄->人名)地图。 要刷新,这是Person…

android linux截图库,Android中截图(surfaceView)源码

总结了一个方法,实现了在Android当前Activity的截图,本人测试确实通过了,不过有朋友说截出来的图是黑色的,不能看。我心想,这没有问题啊,相同的代码我就可以执行通过,并没有没有在意这个问题。可…

xmta温度控制仪说明书_XMT系列数显温度控制器使用说明书

测温元件名称分度号测温范围℃分辩率热电偶镍铬—铜镍E(EA—2)0 - 300、0 - 400、0 - 6001℃镍铬—镍硅K(EU—2)0-400、0-600、0-800、0-1300铂铑—铂S(LB—3)0 - 1600、700 - 1600热电阻铜电阻Cu50(G)-50-150、0-50、0-100、0-1500.1℃铂电阻Pt100(BA1、BA2)-199 - 199、0 - 1…

WARNING: 'aclocal-1.14' is missing on your system.

源码安装zabbix agent时进行到make install时报如下错误: WARNING: aclocal-1.14 is missing on your system.You should only need it if you modified acinclude.m4 orconfigure.ac or m4 files included by configure.ac.The aclocal program is part of the GNU…

23套新鲜出炉的网站和手机界面 PSD 素材

Web 用户界面,移动用户界面和线框套件对设计师很有用,因为这些套件让他们使用快速和有效的方式复制用户界面。这些类型的工具包提供了一个基本的用户界面元素,用于它们需要制作的网站或软件模型。 在这篇文章中,我们展示的是自由和…

arcgis栅格邻域统计_ArcGIS 从基础到实战书正式出版,易智瑞技术总裁沙志友沙总推荐并亲自写序...

《ArcGIS 从基础到实战》书正式出版,易智瑞技术总裁沙志友沙总推荐并亲自写序,京东地址 https://item.jd.com/10025512034581.html第一章 ArcGIS基础和入门 11.1 ArcGIS 10.7 Desktop的安装 11.1.1 安装环境 11.1.2 安装步骤 21.1.3 注意的问…

date简述

Date 定义时间和日期的类 java.util.Date 1s1000ms; 时间的原点:公元1970年1月1日 00点00分00秒; public class DateDemo {public static void main(String[] args) {fun();}private static void fun() {Date dnew Date(0);System.out.println(d)…

WebLogic Classloader分析工具

WebLogic Server具有一个名为Classloader Analysis Tool的内置Web应用程序,您可以通过http:// localhost:7001 / wls-cat访问它 您需要使用为/ console Webapp配置的同一用户登录。 使用CAT,您可以检查应用程序在服务器中加载了哪…

python3 计算rsa私钥 已知n e计算d

# 分解模数n def rsa_moder(n):base 2while base < n:if n % base 0:return base, n // basebase 1# 求欧拉函数f(n) def rsa_get_euler(prime1, prime2):return (prime1 - 1) * (prime2 - 1)# 求私钥 def rsa_get_key(e, euler):k 1while True:if (((euler * k) 1) % …

linux算法平台,Linux实时调度算法与测试平台的研究与实现

摘要&#xff1a;实时系统在过去几年里迅速成长,但能够提供实时功能的操作系统往往价格极为昂贵.由于Linux代码公开,且性能优异,使其成为实时操作系统领域里的新宠.然而Linux本身作为一个通用的分时操作系统,将它应用于实时环境有许多缺点和不足,所以要对现有的Linux进行实时化…

Maplace.js – 小巧实用的 jQuery 谷歌地图插件

Maplace.js是一个小的显示谷歌地图的 jQuery 插件&#xff0c;帮助你把谷歌地图嵌入到你的网站&#xff0c;快速在地图位置上创建标记和控制菜单。它需要 jQuery 和谷歌地图 API v3 支持&#xff0c;所以这两个都需要引入到你的页面。它支持标记和自定义图标、缩放级别和自定义…

vue.js根据数据循环生成表格_vue.js循环for(列表渲染)详解

vue.js循环for(列表渲染)详解一、总结一句话总结&#xff1a;v-for{{ item.message }}var example1 new Vue({el: #example-1,data: {items: [{ message: Foo },{ message: Bar }]}})1、vue.js中的循环结构(列表渲染:for)如何使用&#xff1f;v-for用于循环的数组里面的值可以…

使用Spring Roo进行概念验证

在Keyhole期间&#xff0c;我参与了许多项目&#xff0c;其中客户要求我们重写旧系统&#xff0c;同时保留其现有数据库。 有时&#xff0c;它有助于快速演示如何使用当前技术来简化开发&#xff0c;测试和维护其代码。 我发现可以创建一个快速示例&#xff08;与当前项目相关…

z490 linux raid,华硕z490主板装win7系统及bios设置教程(支持10代usb驱动)

[文章导读]我们在组装电脑时&#xff0c;华硕主板可能是大家的首选&#xff0c;最近有网友问&#xff0c;我组装的华硕z490主板电脑怎么装win7系统呢&#xff0c;这里和大家说下&#xff0c;从华硕z490主板后默认是uefigpt引导模式&#xff0c;且官方没有出usb驱动&#xff0c;…

Ember Charts – 基于 Ember D3 的图表库

Ember Charts 是一个基于 Ember.js 和 D3.js 的图表库。它包括时间序列、柱状图、饼图、点图&#xff0c;很容易扩展和修改。这些图表组件代表图表交互性和演示的最佳实践&#xff0c;是高度可定制和可扩展的。您可以添加说明、标签、提示和鼠标悬停效果。 您可能感兴趣的相关文…

swagger内部类_API管理工具Swagger介绍及Springfox原理分析

swagger是一个API框架&#xff0c;号称世界上最流行的API工具。它提供了API管理的全套解决方案&#xff0c;比如API在线编辑器&#xff0c;API UI展示界面&#xff0c;代码生成器等诸多功能。如果想引入swagger进行API管理。目前 springfox 是一个很好的选择&#xff0c;它内部…