小编the*_*wan的帖子

在Java 8中转换lambdas

Java 8似乎生成了表示lambda表达式的类.例如,代码:

  Runnable r = app::doStuff;
Run Code Online (Sandbox Code Playgroud)

大致表现为:

  // $FF: synthetic class
  final class App$$Lambda$1 implements Runnable {
    private final App arg$1;

    private App$$Lambda$1(App var1) {
        this.arg$1 = var1;
    }

    private static Runnable get$Lambda(App var0) {
        return new App$$Lambda$1(var0);
    }

    public void run() {
        this.arg$1.doStuff();
    }
  }
Run Code Online (Sandbox Code Playgroud)

据我了解,代码是在运行时生成的.现在,假设有人想将代码注入run上述类的方法中.迄今为止的实验产生了NoClassDefFoundVerifyError:

java.lang.NoClassDefFoundError: App$$Lambda$2
    at App$$Lambda$2/1329552164.run(Unknown Source)
    at App.main(App.java:9)
Caused by: java.lang.ClassNotFoundException: App$$Lambda$2
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 2 more
Run Code Online (Sandbox Code Playgroud)

这是针对:

$ java -version
java …
Run Code Online (Sandbox Code Playgroud)

java instrumentation bytecode java-8

15
推荐指数
2
解决办法
2536
查看次数

IntelliJ 12 + Gradle 1.3 - 基本Gradle语法似乎不起作用

我试图在IntelliJ Idea(Ultimate)v12中使用Gradle集成.

即使正确配置了$ GRADLE_HOME,也无法识别基本语法,如"apply","dependencies"等.

在此输入图像描述

我觉得解决方案应该是简单的.任何帮助表示赞赏.

intellij-idea gradle

13
推荐指数
1
解决办法
3735
查看次数

Oracle sqlldr是否可以在Oracle 10和11中接受TNS条目作为实例限定符?

是否可以使用与Oracle 10/11捆绑的sqlldr使用完全限定的TNS条目?

例如,在SQLPlus中:

    sqlplus user/password@(description=(address=(host=localhost)(protocol=tcp)(port=1521))(connect_data=(sid=orcl))) @script.sql
Run Code Online (Sandbox Code Playgroud)

但是使用sqlldr(SQL Loader)似乎直接使用TNS条目存在问题.特别:

    sqlldr user/password@(description=(address=(host=localhost)(protocol=tcp)(port=1521))(connect_data=(sid=orcl))) bad='bad_file.txt' control='control.ctl' data='data.txt' log='log.txt' direct='true'
Run Code Online (Sandbox Code Playgroud)

这是产生的错误消息:

    LRM-00116: syntax error at 'address' following '('

    SQL*Loader: Release 11.2.0.1.0 - Production on Tue Sep 13 15:41:54 2011

    Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.

    SQL*Loader-100: Syntax error on command-line
Run Code Online (Sandbox Code Playgroud)

尝试将TNS条目封装在引号中会产生相同的错误.

看看sqlldr文档,并尝试使用'userid'命令行参数无济于事.特别:

sqlldr userid='user/password@(description=(address=(host=localhost)(protocol=tcp)(port=1521))(connect_data=(sid=orcl)))' bad='bad.txt' control='control.ctl' data='data.txt' log='log.txt' direct='true'
LRM-00116: syntax error at 'password@(' following '='

SQL*Loader: Release 11.2.0.1.0 - Production on Tue Sep 13 15:44:17 2011

Copyright (c) 1982, …
Run Code Online (Sandbox Code Playgroud)

oracle tns sqlplus sql-loader

9
推荐指数
2
解决办法
3万
查看次数

CORS 请求在 docker-compose 环境中失败

我希望弄清楚为什么在 Firefox 中运行的 React 应用程序中的 API 请求失败。

标题如下:

Accept  */*
Accept-Encoding gzip, deflate
Accept-Language en-US,en;q=0.5
Connection  keep-alive
DNT 1
Host    backend:8080
origin  http://localhost:3000
Referer http://localhost:3000/
User-Agent  Mozilla/5.0 ...
Run Code Online (Sandbox Code Playgroud)

在 Chrome 上,一条不透明的消息表明某种网络(ish)错误:

request.js?176a:41 GET http://backend:8080/api/foobar/ 
net::ERR_NAME_NOT_RESOLVED
Run Code Online (Sandbox Code Playgroud)

在 Firefox 上,似乎有更多信息:

Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at http://backend:8080/api/foobar/. (Reason: CORS request did not succeed).
Run Code Online (Sandbox Code Playgroud)

我有一个由两个相关节点组成的环境,frontend以及backend. frontend正在运行托管 Reactfrontend位的服务器。backend是一个 Flask 应用程序,提供一组简单的 JSON API。目的是通过 JSON APIfrontend进行调用backend。 …

cors flask reactjs

4
推荐指数
1
解决办法
4014
查看次数

Gradle 2.0 - 加载java属性文件的正确方法?

在Gradle中,您可以通过以下方式从属性文件加载数据:

apply from: "version.properties"
Run Code Online (Sandbox Code Playgroud)

从Gradle 2.0开始,这会产生一个警告:

"Creating properties on demand (a.k.a. dynamic properties) has been deprecated and is scheduled to be removed in Gradle 2.0. Please read http://gradle.org/docs/current/dsl/org.gradle.api.plugins.ExtraPropertiesExtensi??on.html for information on the replacement for dynamic properties."
Run Code Online (Sandbox Code Playgroud)

在最新最好的Gradle版本中,相同行为的规范手段是什么?

我当然可以通过定义辅助方法来解决这个问题,但我很好奇是否有更简洁的方法.

java gradle

3
推荐指数
1
解决办法
356
查看次数

Clojure core.async和clojure.core命名空间元素似乎发生冲突

我正在尝试修改Cursive,这是Clojure语言的Intellij插件。我已经通过Lein导入了一个非常标准的新应用程序,现在尝试使用一些core.async构造。

这是项目定义:

(defproject app "0.1.0-SNAPSHOT"
  :description "Clojure project illustrating basic core.async constructs"
  :dependencies [[org.clojure/clojure "1.5.1"]
             [org.clojure/core.async "0.1.346.0-17112a-alpha"]])
Run Code Online (Sandbox Code Playgroud)

以及来源:

(ns app.core)

(require '[clojure.core.async :as async :refer :all])

(let [c (chan 10)]
  (>!! c "hello")
  (println (<!! c))
  (close! c))
Run Code Online (Sandbox Code Playgroud)

基本Clojure构造工作没有任何问题。但是在Lein中添加了core.async依赖关系之后,每次我尝试运行一段代码时,这些警告就会出现:

WARNING: partition-by already refers to: #'clojure.core/partition-by in namespace: app.core, being replaced by: #'clojure.core.async/partition-by
WARNING: map already refers to: #'clojure.core/map in namespace: app.core, being replaced by: #'clojure.core.async/map
WARNING: into already refers to: #'clojure.core/into in namespace: app.core, …
Run Code Online (Sandbox Code Playgroud)

asynchronous clojure intellij-idea

2
推荐指数
1
解决办法
492
查看次数