我正在尝试Webpack,并尝试了本教程中的说明,给出或采取一些自定义的东西.
这是一个简单的代码,真的,但我对这个错误感到很困惑,觉得这是我错过的傻事.
我定义了两个ES6类,分别对应于把手模板,我的应用程序的入口点应该替换占位符HTML通过其内容的索引文件:
入口点:
import './bloj.less'
// If we have a link, render the Button component on it
if (document.querySelectorAll('a').length) {
require.ensure([], () => {
const Button = require('./Components/Button.js');
const button = new Button('9gag.com');
button.render('a');
}, 'button');
}
// If we have a title, render the Header component on it
if (document.querySelectorAll('h1').length) {
require.ensure([], () => {
const Header = require('./Components/Header.js');
new Header().render('h1');
}, 'header');
}
Run Code Online (Sandbox Code Playgroud)
指数:
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<h1>My title</h1>
<a>Click me</a>
<script …Run Code Online (Sandbox Code Playgroud) 我在Java流操作中遇到了边缘情况......
我想编码以下行为:"从任意一篮子水果中收集20个最小的,除了最小的梨,因为我们不希望这样."
额外的奖励:来的篮子可能根本没有任何梨.
例子 :
到目前为止,我正迈出这一步:
output = basket.stream()
.sorted(Comparator.comparing(Fruit::getSize))
//.filter(???)
.limit(20)
.collect(fruitCollector);
Run Code Online (Sandbox Code Playgroud)
这似乎是状态 lambda过滤器的情况,我不知道该怎么做.
我不能使用局部firstPear布尔值并true在过滤第一个梨之后将其设置为,因为lambda中的所有局部变量必须是final.
最糟糕的情况我可以将篮子分成两个,梨和非梨,对梨进行分类,如果有的话,适当地对它们进行子目录.这似乎非常低效和丑陋.有没有更好的办法?
这里发布的答案有很多种,而且大多数都是有效的.为了回馈社区,我整理了一个小测试工具来比较这些算法的性能.
这种比较并没有我想要的那么广泛 - 已经有3周了.它仅涵盖简单项目的顺序处理的用法.随意提供测试工具,并添加更多测试,更多基准或您自己的实现.
我的分析:
Algorithm | Author | Perf | Comments -------------------------------------------------------------------------------- Indexed removal | Holger | Best | Best overall, somewhat obscure Stateful predicate | pedromss | Best …
大约一个星期前,我遇到了一个问题:在自定义谷歌驱动的地图上,我的多边形不会显示,而相同坐标的标记完全没问题.尽管我使用Google Maps API,但似乎无法找到原因.
这是指向地图截图的链接.紫色箭头和数字是我的补充,他们表示:
google.maps.Marker我可以把我的"区域"的边缘.google.maps.Polygon代码生成的工件.它是预期的红色,但完全不合适并且奇怪地平坦.以下是生成标记和多边形的代码部分:
var regionData = tecMap.regions[r];
var regionMapMarkers = new google.maps.MVCArray();
for (c in regionData.coords) {
var point = projection.worldToMap(regionData.coords[c]);
debugRegionPoints.push(point);
var thisLatLng = projection.fromPointToLatLng(point);
debugRegionLatLngs.push(thisLatLng);
regionMapMarkers.push(thisLatLng);
}
regionMapMarkers.forEach(function(latLng, m){
var marker = new google.maps.Marker({
position: latLng,
map: map,
title: '',
optimized: false
});
regionCorners.push(marker);
});
var paths = new google.maps.MVCArray();
paths.push(regionMapMarkers);
var region = new google.maps.Polygon({
fillColor: "#FF0000",
fillOpacity: 0.35,
map: map,
paths: paths,
strokeColor: "#FF0000",
strokeOpacity: 0.8,
strokeWeight: 2 …Run Code Online (Sandbox Code Playgroud) 我正在推出一些软件的更新,其中包括运行SQL脚本来创建触发器.
在我的.sql文件语法中,我没有包含任何DEFINER子句,因为我希望我的客户的生产MySQL用户(他们自己设置)能够在程序运行时执行这些触发器.
事实是,测试显示MySQL自动为TRIGGER创建了一个DEFINER 'CURRENT_USER'@'%'.当你做了明智的事情,并使用(受限制的)帐户进行日常数据操作而另一个用于大更新(root?)时,你最终会尝试与一个或多个没有权限的用户一起执行TRIGGER去做吧.
有没有办法删除这个"自动添加定义"功能?
我尝试进入,DEFINER = '%'@'%'但这是不被接受的.
我正在编写一个新的应用程序,使用Guice进行依赖注入,以及Guava的属性验证前置条件.
我正在使用工厂模式根据外部输入创建bean.问题是,验证输入的首选方法是什么?(在可维护性,清晰度等方面)
我们假设这些类:
Bean.java
public interface Bean {
public Object getFoo();
}
Run Code Online (Sandbox Code Playgroud)
BeanImpl.java
public class BeanImpl implements Bean {
private final Object foo;
public BeanImpl(Object param) {
foo = param;
}
@Override
public String getFoo() {
return foo;
}
}
Run Code Online (Sandbox Code Playgroud)
我想检查"param"是否包含"foo"的有效值:
Preconditions.checkArgument(SomeValidator.isValid(param), "Bad param: %s!", param);
Run Code Online (Sandbox Code Playgroud)
我应该在哪里做,为什么?
我正在使用Selenium Webdriver进行Web应用程序的单元测试.它在JUnit测试中使用尽管广泛阅读可用文档并搜索,我找不到一种方法:
可以创建一个具有适当形式的测试网页,并让Webdriver反弹以自动获取这些参数,但这是一个非常难看的黑客.我想避免它,特别是为了测试原子性.(这是单元测试.)
在Wendriver之前,我使用Spring的MockHttpServletRequest和MockHttpServletResponse来做这个,它就像一个魅力,但我想利用Webdriver的强大功能来断言目标页面的内容.
假设我有一个表包含许多行,这些行是未知的.exp column1 column2 column3 xxx yyy"搜索个人资料"
每行的Column3包含一个链接"搜索配置文件",现在很清楚,此链接的xpath将根据该行进行更改.现在我想搜索第2列中的字符串,如果存在则需要单击它的column3链接.有人可以告诉我如何搜索并点击它吗?
我正在习惯 Java 7 和新Files类。
我正在编写一个小型应用程序,它在某些时候必须替换文件的内容。我使用临时文件来避免在出现问题时删除目标文件。AccessDeniedException但是,在执行实际副本时我总是收到。
这是我的代码:
// Temporary file generation.
Path target = getCurrentConfigFile(); // Returns a path, works ok.
Path tempFile = Files.createTempFile("tempfile", null);
Files.write(tempFile, conf.getBytes(Charset.defaultCharset()), StandardOpenOption.WRITE);
// Actual copy.
Files.copy(tempFile, target, StandardCopyOption.REPLACE_EXISTING);
// Cleanup.
Files.delete(tempFile);
Run Code Online (Sandbox Code Playgroud)
getCurrentConfigFile()处理目标文件路径创建:
(... generates various strings from configuration parameters)
return FileSystems.getDefault().getPath(all, these, various, strings);
Run Code Online (Sandbox Code Playgroud)
当我执行代码时,它是通过.bat脚本执行的,并且我在标准命令提示符或提升中都会收到错误。目标文件位于C:\temp\tests我使用同一 Windows 用户创建的目录中。
问题似乎在于从临时文件中读取,因为直接写入目标是有效的。接下来我该看哪里?
我正在构建一个打包在 WAR 静态资源中的 Java Web 应用程序。这些静态资源是通过 Angular-CLI 构建的。
Maven 构建通过 Eirslettmaven-frontend-plugin使用 npm 脚本和 npm mojo触发 ng 构建。
问题是,我想base href根据 Maven 构建参数使用自定义,但我没有设法通过环境变量或参数将它传递给 ng。
有人能告诉我如何从 Maven 将参数传递给 ng 构建吗?
代码:
pom.xml
<plugin>
<groupId>com.github.eirslett</groupId>
<artifactId>frontend-maven-plugin</artifactId>
<executions>
<execution>
<id>node install</id>
<phase>generate-resources</phase>
<goals>
<goal>install-node-and-npm</goal>
</goals>
</execution>
<execution>
<id>npm install</id>
<phase>generate-resources</phase>
<goals>
<goal>npm</goal>
</goals>
<configuration>
<arguments>--registry=${npm.internal.registry} --userconfig ${basedir}/.jenkins-npmrc install</arguments>
</configuration>
</execution>
<execution>
<id>npm build</id>
<phase>prepare-package</phase>
<goals>
<goal>npm</goal>
</goals>
<configuration>
<arguments>--userconfig ${basedir}/.jenkins-npmrc run-script build</arguments>
<environmentVariables>
<test>this-does-not-work</test>
</environmentVariables>
</configuration>
</execution>
<execution>
<id>npm test</id>
<phase>test</phase> …Run Code Online (Sandbox Code Playgroud) 我有一个抽象类SuperClass,它有大量的子类,每个子类在不同的业务对象上工作,但是以类似的方式.
我需要添加一些肯定在其中占有一席之地的新功能SuperClass,但是它将依赖于特定于子类的属性,我需要在超类方法中获得它.这里显而易见的方法是SuperClass为属性添加一个抽象getter ,并让每个子类覆盖它,以便它可以在调用时发送正确的属性.
问题是:由于担心回归,我不允许更改其他子类的代码而不是我正在处理的子代码.
所以我不能添加抽象方法,因为其他子类不再编译.
由于现在只有我正在处理的对象需要这个新功能,所以我可以在其中声明一个标准的非抽象方法SuperClass,然后返回null.然后在我正在处理的子类中覆盖它,并且瞧.
如果没有在Javadoc中正确读取我的警告的人试图从另一个子类调用这个新方法,那么由于getter没有被正确覆盖,它将产生意外的结果.我认为抛出异常对于我的同事们来说更优雅和有用,而不是返回null(和意外的结果)SuperClass.
我可以定义一个定制的异常,但是在"标准"异常中做了什么YouForgotToImplementSomethingException或者PleaseReadTheJavadocException存在什么?
Error按答案中的建议投掷并不是我非常喜欢的东西,但也许在这里模仿编译器的行为是有意义的吗?对此的想法?
我的一个方法返回一个Map<A,B>. 在一些明确标识的情况下,映射只包含一个键值对,实际上只是两个对象的包装器。
是否有一种高效/优雅/清晰的方式来访问键和值?迭代单元素条目集似乎有点过分。我正在寻找可以降低维持这一点的人所需的脑力的东西,例如:
(...)
// Only one result.
else {
A leKey = map.getKey(whicheverYouWantThereIsOnlyOne); // Is there something like this?
B leValue = map.get(leKey); // This actually exists. Any Daft Punk reference was non-intentional.
}
Run Code Online (Sandbox Code Playgroud)
编辑:我最终选择了下面的@akoskm 解决方案。最后,在没有迭代的情况下做到这一点的唯一令人满意的方法是使用 a TreeMap,而开销使它变得不合理。
事实证明并不总是有灵丹妙药,特别是因为用它杀死一只非常小的兔子。
我目前正在尝试在Centos 6.6机器上构建一个Ruby应用程序.通过软件集合安装了不同的Ruby堆栈.请注意,我的机器上没有root,我的权限有限,特别是它们不包括软件包安装.
本机扩展不构建.它似乎ruby-devel缺失了,但管理员告诉我它已正确安装两个堆栈:
dnf install rh-ruby22-ruby-devel.x86_64 ruby193-ruby-devel.x86_64 -y
Run Code Online (Sandbox Code Playgroud)
这是我的问题:
bob@server ~> scl enable rh-ruby22 bash
bash-4.1$ ruby -v
ruby 2.2.2p95 (2015-04-13 revision 50295) [x86_64-linux-gnu]
bash-4.1$ gem install json Building native extensions. This could take a while... ERROR: Error installing json:
ERROR: Failed to build gem native extension.
/opt/rh/rh-ruby22/root/usr/bin/ruby -r ./siteconf20150625-17536-saskmd.rb extconf.rb mkmf.rb can't find header files for ruby at /opt/rh/rh-ruby22/root/usr/share/include/ruby.h
extconf failed, exit code 1
Gem files will remain installed in ~/.gem/ruby/gems/json-1.8.3 for inspection. Results logged to ~/.gem/ruby/extensions/x86_64-linux/json-1.8.3/gem_make.out …Run Code Online (Sandbox Code Playgroud) java ×6
javascript ×2
selenium ×2
angular-cli ×1
babeljs ×1
centos ×1
ecmascript-6 ×1
exception ×1
factory ×1
file ×1
filtering ×1
google-maps ×1
guice ×1
java-8 ×1
java-stream ×1
junit ×1
map ×1
maven ×1
methods ×1
mysql ×1
nio2 ×1
permissions ×1
polygon ×1
post ×1
projection ×1
readability ×1
ruby ×1
rubygems ×1
selenium-rc ×1
triggers ×1
validation ×1
webdriver ×1
webpack ×1