如果我输入019 > 020JavaScript控制台(在Chrome和Firefox中测试),我会得到答案true.
这是因为020被解释为OctalIntegerLiteral(等于16),而019显然被解释为DecimalLiteral(和等于19).由于19是大于16,019 > 020是true.
令我困惑的是为什么019被解释为DecimalLiteral第一名.它是哪种产品?DecimalIntegerLiteral不允许019:
DecimalIntegerLiteral ::
0
NonZeroDigit DecimalDigits_opt
Run Code Online (Sandbox Code Playgroud)
OctalIntegerLiteral也不允许019(因为9不是八进制数字):
OctalIntegerLiteral ::
0 OctalDigit
OctalIntegerLiteral OctalDigit
OctalDigit :: one of
0 1 2 3 4 5 6 7
Run Code Online (Sandbox Code Playgroud)
因此,从我在规范中看到的,019实际应该被拒绝,我不明白为什么它被解释为十进制整数.
我想这里有一些兼容性规则,但我找不到正式的定义.可以请任何人帮我这个吗?
(为什么我需要这个:我正在使用JavaCC为Java开发一个JavaScript/ECMAScript解析器,并且必须特别注意规范 - 以及它的偏差.)
从历史上看,我总是在我的Maven项目中使用以下JAXB RI工件:
com.sun.xml.bind:jaxb-impl - 运行com.sun.xml.bind:jaxb-xjc - 模式编译器com.sun.xml.bind:jaxb-jxc - 模式生成器从大约版本开始,2.2.10*这些工件现在被描述为"旧":
com.sun.xml.bind:jaxb-impl旧的JAXB运行时模块.
所以看起来这些工件现在已经过时了.
问题是:
应该使用哪些工件?
我正在使用非常大的JSF/Facelets应用程序,它们使用Spring进行DI/bean管理.我的应用程序具有模块化结构,我目前正在寻找标准化模块化的方法.
我的目标是从许多模块(可能相互依赖)组成Web应用程序.每个模块可能包含以下内容:
我想避免(几乎不惜一切代价)是需要将模块资源(如Facelets模板)复制或提取到WAR或扩展web.xmlfor模块的servlet,过滤器等.它必须足以添加模块(JAR,捆绑,伪影,...)到web应用(WEB-INF/lib,bundles,plugins,...)来延伸,以与该模块的Web应用程序.
目前,我使用自定义模块化解决方案来解决此任务,该解决方案主要基于使用类路径资源:
classpath*:com/acme/foo/module/applicationContext.xml加载应用程序上下文 - 这会加载模块JAR中定义的应用程序上下文.最后几天我读了很多关于OSGi的内容,我正在考虑,如何(以及如果)我可以将OSGi用作标准化的模块化方法.我在考虑如何使用OSGi解决单个任务:
ResourceLoader用bundle上下文注册实例.中央ResourceServlet使用这些资源加载器从bundle加载资源.ResourceResolver使用bundle注册的服务.#{myBean.property}if myBean在其中一个bundle中定义.我的问题是:
我一般都很感谢你的评论.
下个月,我的公司将发布我们的一项技术作为开源项目.我们现在正在准备网站,文档等.我想问的问题是:
你会推荐哪些开源项目作为一个记录良好,精心设计的项目的参考?
我们正在寻找具有良好网站演示,文档,教程,样本等的开源项目.我们可以学习的项目.
(A couple of words about our project, if it is relevant: it is a JavaScript library for web mapping, based on OpenLayers.)
我有一个maven插件(jaxb2),我需要提供一个jvm arg.我不认为有一个标签可以在它的pom中添加jvm args.
我知道我可以在命令行传入jvm args,例如: mvn clean install -Djavax.xml.accessExternalSchema=all
是否可以在pom中设置此jvm arg,以便我不必每次都在命令行中键入它?
(除此之外 - 这个jvm arg是必需的,以便它可以与JAVA-8一起使用.它适用于JAVA-7)
我正在使用新的BMW 116i创新套件试验BMW Java SDK.打开和关闭灯,启动和停止电机等基本功能都可以正常工作.我现在要做的是编写一个将速度限制在驱动程序配置文件中配置的最大速度的carlet.通过RFID阅读器照常检测驾驶员身份.
我的问题是虽然我可以从转速表读取速度,但我无法真正限制速度.这是我到目前为止所做的工作:
public class SpeenControllingCarlet extends GenericCarlet {
public void start(final VehicleModel model) throws CarletException {
RfidReader rfidReader = (RfidReader) model
.getDevice(Devices.DRIVER_RFID_READER);
Rfid rfid = rfidReader.getRfid();
DriverProfile driverProfile = model.getDriverProfileRegistry()
.getDriverProfile(rfid.toString());
if (driverProfile == null) {
return;
}
final Double maxAllowedSpeed = Double.valueOf(driverProfile
.getCustomAttribute("maxAllowedSpeed", "190"));
Tachometer tachometer = (Tachometer) mode.getDevice(Devices.TACHOMETER);
tachometer.addSpeedListener(new SpeedListener() {
public void onSpeedChanged(SpeedChangedEvent speedChangedEvent) {
if (speedChangedEvent.getCurrentSpeed() > maxAllowedSpeed)
{
Horn horn = (Horn) mode.getDevice(Devices.HORN);
horn.beep(440, 2000);
}
}
});
}
}
Run Code Online (Sandbox Code Playgroud)
如果驱动程序比驱动程序配置文件允许的速度快,则只会发出两秒钟的哔声.
我的问题是 …
我正在考虑以下问题(非常粗略的描述):
假设我们有一个图表,其中边缘被分配了一些非负成本,一个起始节点s和一些成本常数C.找出:
N,从到达s那里的最短路径的从开始节点的成本s在任何节点N不大于C.e集合 - 最短路径的成本.基本上Dijkstra有成本约束.
我的主要问题是:图论中这个问题的正确术语是什么?
我一直在关注"可访问性"或"可达性",但这些似乎是错误的关键字.
最后,我正在寻找一种算法,它可以在一个(不可修改的)但相当大的(可能约1亿个边缘)图形上并行地有效地回答许多这样的查询.我想查看文献,但需要提供正确的关键词提示.
更新:我的实际问题如下.
假设我们获得了一个大陆规模的道路网络(模拟为有向图,在边缘和节点上具有一些属性,如果它是行人路或高速公路).边缘成本是旅行时间.
我想回答用户查询,例如:从某个给定位置(图形节点)开始,哪些节点可在1小时内到达?
我也想非常快地(对于许多用户来说,如果可能的话,<200-300ms)(并且如果可能的话,> 200,如果可能)并行地回答这些查询.
我认为应该至少有两种可能的优化:
我自己有一些想法,但我首先要检查文献,以避免重新发明轮子.
我试图从wsdl文件生成源代码,但我在我的pom.xml上遇到错误,我认为这可能是我的问题?下面是我从我的pom和我的pom文件中得到的错误.我也无法用"mvn clean install"构建项目.我似乎只是因为没有真正原因而得到错误.
生成标记的错误:
Execution default of goal org.jvnet.jaxb2.maven2:maven-jaxb2-plugin:0.12.3:generate failed: A required class was missing while executing org.jvnet.jaxb2.maven2:maven-jaxb2-plugin:0.12.3:generate: com/sun/codemodel/CodeWriter
-----------------------------------------------------
realm = plugin>org.jvnet.jaxb2.maven2:maven-jaxb2-plugin:0.12.3-715230752
strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy
urls[0] = file:/C:/Users/Windows/.m2/repository/org/jvnet/jaxb2/maven2/maven-jaxb2-plugin/0.12.3/maven-jaxb2-plugin-0.12.3.jar
urls[1] = file:/C:/Users/Windows/.m2/repository/org/jvnet/jaxb2/maven2/maven-jaxb2-plugin-core/0.12.3/maven-jaxb2-plugin-core-0.12.3.jar
urls[2] = file:/C:/Users/Windows/.m2/repository/org/slf4j/slf4j-api/1.7.7/slf4j-api-1.7.7.jar
urls[3] = file:/C:/Users/Windows/.m2/repository/org/apache/commons/commons-lang3/3.2.1/commons-lang3-3.2.1.jar
urls[4] = file:/C:/Users/Windows/.m2/repository/com/sun/org/apache/xml/internal/resolver/20050927/resolver-20050927.jar
urls[5] = file:/C:/Users/Windows/.m2/repository/junit/junit/4.8.1/junit-4.8.1.jar
urls[6] = file:/C:/Users/Windows/.m2/repository/org/codehaus/plexus/plexus-utils/1.5.15/plexus-utils-1.5.15.jar
urls[7] = file:/C:/Users/Windows/.m2/repository/org/jvnet/jaxb2/maven2/maven-jaxb22-plugin/0.12.3/maven-jaxb22-plugin-0.12.3.jar
urls[8] = file:/C:/Users/Windows/.m2/repository/org/glassfish/jaxb/jaxb-runtime/2.2.11/jaxb-runtime-2.2.11.jar
urls[9] = file:/C:/Users/Windows/.m2/repository/org/glassfish/jaxb/jaxb-xjc/2.2.11/jaxb-xjc-2.2.11.jar
urls[10] = file:/C:/Users/Windows/.m2/repository/org/apache/maven/plugin-tools/maven-plugin-annotations/3.2/maven-plugin-annotations-3.2.jar
Number of foreign imports: 5
import: Entry[import org.sonatype.plexus.build.incremental from realm ClassRealm[plexus.core, parent: null]]
import: Entry[import org.codehaus.plexus.util.Scanner from realm ClassRealm[plexus.core, parent: null]] …Run Code Online (Sandbox Code Playgroud) 在Java中,我们使用JAXB2进行了大量工作.对象< - > XML映射在Java类中定义为注释:
@XmlRootElement(name="usertask", namespace="urn:test")
public class UserTask
{
@XmlElement(namespace="urn:test")
public String getAssignee() { ... }
public void setAssignee(String assignee) { ... }
}
Run Code Online (Sandbox Code Playgroud)
JAXB运行时可以读取这些注释并创建unmarshaller以将XML解析为对象实例或将对象编组为XML.
JAXB提供了一个模式编译器(XJC),它可以从XML模式生成带注释的类,这是另一个很棒的特性.
最近我们一直在使用客户端JavaScript进行大量工作.我们还需要XML处理.例如,我们需要像这样解析WPS文档.这些文档也符合不同的XML模式(这里是示例XML 的WPS 1.0.0模式).使用JavaScript对象而不是XML会很棒,这可以节省大量的工作量.在某些情况下,我们可以使用基于JSON的解决方案,如DWR,但在许多情况下,我们必须在客户端处理XML.
我的问题是:
是否有一些JAXB for JavaScript的模拟?
一些工具可以将XML Schema编译成一些XML < - >对象映射并提供运行时来在XML和JavaScript对象之间进行转换?
我可以很容易地想象以下形式生成的映射:
UserTask = new JSXML.XmlRootElement({
name: "usertask",
namespace: "urn:test",
properties: [
{
assignee: new JSXML.XmlElement({
name: "assignee",
namespace: "urn:test",
type: new JSXML.XSD.String()
})
}
]
});
Run Code Online (Sandbox Code Playgroud)
这应该足以构建unmarshaller或marshaller.
假设我们在集合中有一些项目,我们想要使用某个比较器对它们进行排序,期望列表中的结果:
Collection<Item> items = ...;
Comparator<Item> itemComparator = ...;
Run Code Online (Sandbox Code Playgroud)
其中一种方法是对列表中的项进行排序,例如:
List<Item> sortedItems = new ArrayList<>(items);
Collections.sort(sortedItems, itemComparator);
Run Code Online (Sandbox Code Playgroud)
另一种方法是使用排序流:
List<Item> sortedItems = items
.stream()
.sorted(itemComparator)
.collect(Collectors.toList());
Run Code Online (Sandbox Code Playgroud)
我想知道,哪种方法更有效率?排序流是否有任何优点(如多核上的紧固排序)?
从运行时复杂性/速度的角度来看,效率很高.
我不相信自己能够实现一个完美的基准,学习SortedOps并没有真正启发我.
java ×5
jaxb ×3
javascript ×2
maven ×2
arraylist ×1
carlet ×1
dwr ×1
eclipse ×1
ecmascript-5 ×1
grammar ×1
graph-theory ×1
java-8 ×1
java-stream ×1
javacc ×1
jaxb2 ×1
jsonix ×1
open-source ×1
osgi ×1
rfid ×1
soap ×1
spring ×1
wsdl ×1
xml ×1