
[Composer\Json\JsonValidationException]
“./composer.json”与预期的 JSON 模式不匹配:
- 属性名称是必需的
- 属性描述是必需的
我尝试通过谷歌进行梳理,尝试重新安装作曲家,我不知道如何修复这个错误。
据我所知:
Character但是,它有更多的处理(静态.isLetter()方法和其他等).虽然我的问题可能听起来很愚蠢,但它们是:
char,short因为它们具有相同的"内部长度",无论如何,Java中没有无符号的原始类型?Short是final,如果不是,可以Character延长Short?编辑:答案给我错了:有是在Java中一个未签名的原始类型,这是... char.
编辑2:@PatriciaShanahan还提到在算术运算中,char行为类似于无符号16位整数,就像a short.这包括左移,即,符号位被一起携带,就像对short.
我在Java中使用有效的HTML字符串(使用jsoup解析,因此所有标签都有结束标记并且形成良好),我需要查找给定标记名称的内容,例如,使用以下内容串:
<p> hi! </p>
<p> hi again! </p>
<h1> foo </h1>
<p> bye! </p>
Run Code Online (Sandbox Code Playgroud)
鉴于标签'p',我期望的结果是:
1)<p> hi! </p>
2)<p> hi again! </p>
3)<p> bye! </p>
Run Code Online (Sandbox Code Playgroud)
我通过简单地使用apache.commons.lang库和StringUtils.substringsBetween(String html,String"opentag",String"endtag")方法来完成这一点,该方法将返回一个具有所需结果的String数组.但是,当我搜索嵌套了完全相同标签的标签时(常见的例子是div)我会得到错误的结果(我理解为什么)
例如,使用...
<div>
<p> hey there </p>
<div>
<div>
<p> asd </p>
</div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
我期待3个结果:1)
<div>
<p> hey there </p>
<div>
<div>
<p> asd </p>
</div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
2)
<div>
<div>
<p> asd </p>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
3)
<div>
<p> asd </p>
</div>
Run Code Online (Sandbox Code Playgroud)
但是我得到一个(我知道它是因为标签出现在String中的方式)我只是不知道如何解决它.我现在已经苦苦挣扎了两个星期了,我已经尝试过使用正则表达式而没有任何成功,我也尝试将html字符串拆分为一系列行,但也失败了.
你会如何解决这个问题?我已经知道有很多库使用jsoup的getAllElementsByTag(tagName)等方法为你做这件事,但我想自己做.任何提示都表示赞赏!
我使用Guava,特别是他们的不可变集合(ImmutableList,ImmutableSet).
但是Guava是为Java 6编译的.如果我使用Java 8,我可以使用.stream()它们吗?
我遇到过一个错误,其中一个服务器应用程序每秒使用越来越多的内存,我已经设法筛选出一个仍然显示该行为的简短示例:
public class TestGetLastModifiedTime {
private static final Path PATH = Paths.get("D:\\test.txt");
private static final ScheduledExecutorService SCHEDULER = Executors.newScheduledThreadPool(1);
public static void main(String[] args) {
SCHEDULER.scheduleAtFixedRate(() -> getLastModifiedTime(), 0, 1, TimeUnit.SECONDS);
}
private static void getLastModifiedTime() {
try {
FileTime lastModifiedTime = Files.getLastModifiedTime(PATH);
} catch (IOException ex) {
throw new UncheckedIOException(ex);
}
}
}
Run Code Online (Sandbox Code Playgroud)
在Windows 8.1和Java 8u20上运行.
通过VisualVM,我观察到最大堆大小不会增长,堆本身也会不断增加.同时我在Windows任务管理器中观察到生成的java.exe进程每秒都在使用(保留)更多内存.
有趣的是,当我从VisualVM中执行GC时,所有使用的堆内存都会重置为几乎为零,并且java.exe进程的已用内存不会像预期那样收缩,因为它被认为是保留的.
但是,GC完成后,内存使用量仍然每秒都在增加,而现在肯定有足够的可用堆空间.
Metaspace也不受影响.
对我来说这真的很有气味,看起来像JVM有内存泄漏.
任何人都可以帮助我解释这里发生了什么吗?
在某些项目中,我使用经典ResourceBundle机制来获取与语言环境相关的消息(异常消息,信息消息等等).
但我有一些问题:
ResourceBundle可以返回一个Object;.setParent()不首先搜索父亲,但孩子).我知道可以编写代码来克服后两点; 但是,如果有一个库以更简单的方式处理消息,那就更好了!你知道吗?
让我们有一个文本,我们希望在双引号之间匹配所有字符串; 但在这些双引号内,可以引用双引号.例:
"He said \"Hello\" to me for the first time"
Run Code Online (Sandbox Code Playgroud)
使用正则表达式,您如何有效地匹配它?
在为类编写Javadoc时,当我希望添加到另一个类的链接时,我输入:
{@link SomeCl<TAB>}
Run Code Online (Sandbox Code Playgroud)
并且IDEA完全导入完成,即它将产生{@link com.foo.SomeClass}; 之后才能选择"替换为导入".
有没有办法告诉IDEA在这种情况下使用进口?
(这对于代码自动执行更令人沮丧...只是不是Javadoc)
A CharsetDecoder基本上有助于将序列解码bytes为chars 序列(参见参考资料Charset#newDecoder()).另一方面,a CharsetEncoder(参见Charset#newEncoder())反过来:取一系列chars,并将它们编码为bytes 序列.
CharsetDecoder定义.onMalformedInput()并且它看似合乎逻辑(某些字节序列可能无法转换为有效char序列); 但为什么.onUnmappableCharacter()因为它的输入是一个字节序列?
同样,CharsetEncoder定义.onUnmappableCharacter()哪个是逻辑(例如,如果你的字符集是ASCII,你不能编码ö); 但为什么它也定义,.onMalformedInput()因为它的输入是一个字符序列?
这是更有趣的,你不能从解码器获得编码器,反之亦然,这两个类似乎没有共享一个共同的祖先......
编辑1
确实有可能触发.onMalformedInput()a CharsetEncoder.你"只是"必须提供非法char或char序列.下面的程序依赖于以下事实:在UTF-16中,高代理人必须遵循低代理人; 在这里,使用两个高代理构建一个双元素字符数组,并尝试对其进行编码.注意如何String从这样一个格式错误的char序列创建一个不会引发任何异常:
码:
public static void main(final String... args)
throws CharacterCodingException
{
boolean found = false;
char c = '.';
for (int i = 0; i < 65536; …Run Code Online (Sandbox Code Playgroud) 我开发了一个SonarQube插件,为了满足我的一个需求,我需要将项目的分析日期存储为SQL TIMESTAMP(请注意: a TIMESTAMP,而不是 a TIMESTAMP WITH TIMEZONE).
以下是我目前的工作方式:
// In the SonarQube Sensor
// .getAnalysisDate() returns a java.util.Date
final Instant instant = module.getAnalysisDate().toInstant();
// Timestamp at UTC from the Instant
final LocalDateTime dt = LocalDateTime.frominstant(instant, ZoneOffset.UTC);
final Timestampt ts = Timestamp.valueOf(dt);
Run Code Online (Sandbox Code Playgroud)
抓住Instant的概念我有点麻烦,还有ZonedDateTime等......
无论如何,这似乎做我想要的,但这是正确的方法吗?
java ×8
java-8 ×3
collections ×1
composer-php ×1
guava ×1
html ×1
java-time ×1
javadoc ×1
json ×1
jsoup ×1
jvm ×1
laravel ×1
memory-leaks ×1
regex ×1
tags ×1