我正在尝试编译以下代码:
public class DuplicateMainExample {
public static void main(String[] args) {
System.out.print("A1");
}
public static void main(String... args) {
System.out.print("A2");
}
}
Run Code Online (Sandbox Code Playgroud)
在Eclipse中,它工作正常,但在两个方法上都有警告 - " DuplicateMainExample "中的" Duplicate method main(String []) "
使用javac(java版"1.7.0_09")我有一个编译错误:
>javac DuplicateMainExample.java
DuplicateMainExample.java:8: error: cannot declare both main(String...) and main
(String[]) in DuplicateMainExample
public static void main(String... args) {
^
1 error
Run Code Online (Sandbox Code Playgroud)
如何使用Eclipse编译javac?
我有以下JSON
{
"known-name": "Zevs",
"approximate-age": 320
}
Run Code Online (Sandbox Code Playgroud)
和绑定类
public class GodBinding {
@JsonProperty("known-name")
public String name;
@JsonProperty("approximate-age")
public int age;
// constructors
// getters & setters
}
Run Code Online (Sandbox Code Playgroud)
和后续的Maven依赖关系2.23.2 2.5.4
<dependencies>
<dependency>
<groupId>org.glassfish.jersey.containers</groupId>
<artifactId>jersey-container-servlet</artifactId>
<version>${jersey.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.jaxrs</groupId>
<artifactId>jackson-jaxrs-json-provider</artifactId>
<version>${jackson.version}</version>
</dependency>
</dependencies>
Run Code Online (Sandbox Code Playgroud)
如果我发布这样的json,那么我会得到带有null的意外结果。
GodBinding [name=null, age=0]
Run Code Online (Sandbox Code Playgroud)
如果我使用不带名称的@JsonProperty并发送JSON,其中属性名称等于字段名称
{
"name": "Zevs",
"age": 320
}
Run Code Online (Sandbox Code Playgroud)
然后就可以了
GodBinding [name=Zevs, age=320]
Run Code Online (Sandbox Code Playgroud)
如果有人知道,如何使@JsonProperty(“ name”)在正常工作的字段上?