我正在尝试使用以下命令在macos sierra上找到我的签名密钥库的SHA1哈希:
keytool -exportcert -alias androiddebugkey -keystore $HOME/.android/debug.keystore -list -v -storepass android
Run Code Online (Sandbox Code Playgroud)
结果如下所示:
别名:androiddebugkey
创建日期:2017年10月25日
输入类型:PrivateKeyEntry
证书链长度:1
证书[1]:
keytool错误:java.util.IllegalFormatConversionException:d!= java.lang.String java.util. IllegalFormatConversionException:d!= Java.lang.String at java.base/java.util.Formatter $ FormatSpecifier.failConversion(Formatter.java:4331)at java.base/java.util.Formatter $ FormatSpecifier.printInteger(Formatter.java: 2846)at java.base/java.util.Formatter $ FormatSpecifier.print(Formatter.java:2800)at java.base/java.util.Formatter.format(Formatter.java:2581)at java.base/java.util .Formatter.format(Formatter.java:2517)位于java.base/java.lang.String.format(String.java:2747)java.base/sun.security.tools.keytool.Main.withWeak(Main.java) :3151)在java.base/sun.security.tools.keytool.Main.printX509Cert(Main.java:3182)的java.base/sun.security.tools.keytool.Main.doPrintEntry(Main.java:1995)at at java.base/sun.security.tools.keytool.Main.doCommands(Main.java:1212)在java.base/sun.security.tools.keytool.Main.run(Main.java:397)java.base/sun.security.tools.keytool.Main.main(Main.java:390)
据我所知,该命令正在运行,它不是文件的问题,也不是密码,在我看来java中的一个内部错误,它是否缺少一些java包?我正在使用Java SDK 9.0.1
我尝试执行以下操作以node_modules从tslint. 但他们都没有解决这个问题。
如果是因为我调用node_modules文件夹的方式,我很困惑。
第一次尝试- 在tsconfig.json和中添加了以下内容tsconfig-aot.json
"exclude": [
"../node_modules/**/*",
"./node_modules/**/*",
"node_modules",
"node_modules/**/*.ts",
"**/node_modules/**/*",
"**/node_modules/**"
]
Run Code Online (Sandbox Code Playgroud)
第二次尝试- 添加exclude到每个项目部分.angular-cli.json
"lint": [{
"project": "../../../tsconfig.json",
"exclude": "./node_modules/*" // also tried **/node_modules/**/*
},
{
"project": "../../../tsconfig-aot.json",
"exclude": "./node_modules/*"
}
],
Run Code Online (Sandbox Code Playgroud)
第三次尝试-tslint-cli使用--exclude选项执行
tslint --exclude node_modules --project tsconfig-aot.json
tslint --exclude node_modules --project tsconfig.json
Run Code Online (Sandbox Code Playgroud)
还是没有变化。每当我这样做时yarn webpack:build,我仍然会从 node_modules 收到这些警告。
同样在tsconfig.jsonand 中tsconfig-aot.json,它已经有"skipLibCheck": true
更新
我安装了 …
我有两种方法,如下所示
private List<Long> getIds(String name, List<Cat> cats) {
List<Long> catIds = new ArrayList<>();
for (Cat cat : cats) {
if (cat.getName().equals(name)) catIds.add(cat.getId());
}
return catIds;
}
private List<Long> getIds(String name, List<Dog> dogs) {
List<Long> dogIds = new ArrayList<>();
for (Dog dog : dogs) {
if (dog.getName().equals(name)) dogIds.add(dog.getId());
}
return dogIds;
}
Run Code Online (Sandbox Code Playgroud)
我的猫狗课程如下
public class Cat {
String name;
Long id;
// additional variables
// getters and setters
}
public class Dog {
String name;
Long id;
// additional variables
// …Run Code Online (Sandbox Code Playgroud) 我想知道在angular2中是否有一种方法可以使用*ngFor并跳过第一个或第n个元素来循环遍历数组或列表
我想在webview中为请求添加自定义标头.我认为应该可以这样做shouldInterceptRequest..因为我的最小API级别小于21 shouldInterceptRequest(最终的WebView视图,最终的String url)也被调用,因此我需要在这里添加标题,但我不知道如何.
@Override
public WebResourceResponse shouldInterceptRequest(WebView view, WebResourceRequest request) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
request.getRequestHeaders().put("ClientId", "ANDROID");
request.getRequestHeaders().put("Tokon", token);
}
return super.shouldInterceptRequest(view, request);
}
@Override
public WebResourceResponse shouldInterceptRequest(final WebView view, final String url) {
// I need to updated the header here
return super.shouldInterceptRequest(view, url);
}
Run Code Online (Sandbox Code Playgroud)
有一个建议使用view.loadUrl(url,headers),但这也不起作用.
我正在使用下面的代码安排工作。
@Controller
@RequestMapping("VIEW")
public class MyController {
@RenderMapping
public String defaultView() {
try {
String cronText = "0 30 12 1/1 * ? *";
String description = "Message Scheduler Description";
String destinationName = DestinationNames.SCHEDULER_DISPATCH;
int exceptionsMaxSize = 0;
String portletId = "portletId";
Message message = new Message();
message.put(SchedulerEngine.MESSAGE_LISTENER_CLASS_NAME,SchedulerListener.class.getName());
message.put(SchedulerEngine.PORTLET_ID, portletId);
Trigger trigger = new CronTrigger(SchedulerListener.class.getName(), SchedulerListener.class.getName(), cronText);
SchedulerEngineHelperUtil.schedule(trigger,StorageType.PERSISTED, description, destinationName, message, exceptionsMaxSize);
}catch (SchedulerException e) {
e.printStackTrace();
}
return "view";
}
}
Run Code Online (Sandbox Code Playgroud)
上述代码的问题在于调度程序仅在服务器会话之前有效。执行此方法后,即使在服务器重新启动后,我也想在提到的时间触发调度程序作业。有没有办法在liferay中实现这一点?
我假设集合中不可修改的方法返回底层集合的视图或外观。这似乎是不言而喻的,它将unmodifiableList使用底层列表的顺序,并且unmodfiableSet可以自由地执行任何操作,因为没有顺序。
我使用的LinkedHashSet是一个集合,但确实保留了顺序,并且试图公开保留底层顺序的集合的不可修改的视图。使用unmodifiableSet似乎不合适,但我不能使用unmodifiableList。我无法找到unmodifiableCollection将使用底层集合中的任何排序的保证,尽管我怀疑它会。
有人可以向我指出定义此行为或与之相矛盾的规范吗?
这个问题是关于使用的jhipster-generator.
我注意到反应支持(即generator-jhipster-react)已经合并到了generator-jhipster,但我没有找到关于如何生成反应项目的指南generator-jhipster.
任何人都可以确定如何创建反应项目generator-jhipster?
我有以下代码
public ClientResponse doGet(HttpServletRequest request, URI uri) {
return webClient.get()
.uri(uri.toASCIIString())
.headers(headers -> headers.putAll(processRequest(request))
.exchange()
.block();
}
Run Code Online (Sandbox Code Playgroud)
但是当我尝试通过 RestController 返回此 ClientResponse 时,如下所示,
@GetMapping
@ResponseBody
public ClientResponse doGet(HttpServletRequest request) {
ClientResponse node = service.doGet(request);
return node;
}
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
org.springframework.http.converter.HttpMessageNotWritableException:找不到类型返回值的转换器:类org.springframework.web.reactive.function.client.DefaultClientResponse
基本上,我想要的最终目标是将实际响应返回给调用者 - 包括标头、正文、cookie等。
我正在考虑像下面这样使用 ResponseEntity 。
public ResponseEntity<JsonNode> doGet2(HttpServletRequest request, URI uri) {
Mono<ClientResponse> clientResponse = webClient.get()
.uri(uri.toASCIIString())
.headers(headers -> headers.putAll(processRequest(request))
.exchange();
HttpHeaders headers = clientResponse.map(resp -> resp.headers().asHttpHeaders()).block();
JsonNode body = clientResponse.flatMap(resp -> resp.bodyToMono(JsonNode.class)).block();
ResponseEntity<JsonNode> jsonNode = ResponseEntity.ok().headers(headers).body(body);
return jsonNode; …Run Code Online (Sandbox Code Playgroud) java ×4
angular ×3
android ×2
certificate ×1
collections ×1
jhipster ×1
keystore ×1
keytool ×1
liferay ×1
ngfor ×1
scheduling ×1
spring-boot ×1
spring5 ×1
tslint ×1
typescript ×1
webview ×1