请查看以下编辑内容
我正在尝试创建一个JShell实例,它允许我访问,并允许我与它创建的JVM中的对象进行交互.这适用于在编译时可用的类但对于动态加载的类失败.
public class Main {
public static final int A = 1;
public static Main M;
public static void main(String[] args) throws Exception {
M = new Main();
ClassLoader cl = new URLClassLoader(new URL[]{new File("Example.jar").toURL()}, Main.class.getClassLoader());
Class<?> bc = cl.loadClass("com.example.test.Dynamic");//Works
JShell shell = JShell.builder()
.executionEngine(new ExecutionControlProvider() {
@Override
public String name() {
return "direct";
}
@Override
public ExecutionControl generate(ExecutionEnv ee, Map<String, String> map) throws Throwable {
return new DirectExecutionControl();
}
}, null)
.build(); …Run Code Online (Sandbox Code Playgroud) 我有一个 Spring Boot 1.4.7 应用程序,目前正在更新到 2.0.5 版。该应用程序使用 JDBC 使用以下配置连接到 Oracle DB:
spring:
jpa:
database-platform: org.hibernate.dialect.Oracle12cDialect
datasource:
url: jdbc:oracle:thin:@<db_server>
username: ${credentials.database.username}
password: ${credentials.database.password}
driver-class: oracle.jdbc.OracleDriver.class
platform: oracle
tomcat:
connection-properties: v$session.program=${spring.application.name}
Run Code Online (Sandbox Code Playgroud)
将应用程序更新到 Spring Boot 2.0.5 后,发送到服务器的应用程序名称JDBC Thin Client不是${spring.application.name}. 这样做的原因似乎是在 Spring 2.x 中切换到 HikariCP 作为默认连接池。我将如何以允许我将自定义属性发送v$session.program到数据库的方式将此配置迁移到 Hikari ?
我尝试过的:
?ApplicationName=<name>到 JDBC url。System.setProperty("oracle.jdbc.v$session.program", <name>)spring.datasource.hikari.data-source-properties.v$session.program: <name>在 application.yml 中设置我无法在 Windows 7 上的 Rail 6 中创建表(即成功运行 db:migrate)。
以防万一我通过安装 Ruby 2.6 开发包并执行“gem install Rails”完全重新安装了 Rails,这对我来说安装了 Rails 6.0.3.1
我创建了一个新项目,所做的第一件事是生成一个“客户”模型,之后我在失败并提示“给出了错误数量的参数”后立即运行 db:migrate 命令。见下文。
C:\Apps\rails>cd cmdb
C:\Apps\rails\cmdb>rails generate model Customer string:name
invoke active_record
create db/migrate/20200525080817_create_customers.rb
create app/models/customer.rb
invoke test_unit
create test/models/customer_test.rb
create test/fixtures/customers.yml
C:\Apps\rails\cmdb>rails db:migrate
== 20200525080817 CreateCustomers: migrating ==================================
-- create_table(:customers)
rails aborted!
StandardError: An error has occurred, this and all later migrations canceled:
wrong number of arguments (given 1, expected 0)
C:/Apps/rails/cmdb/db/migrate/20200525080817_create_customers.rb:4:in `block in change'
C:/Apps/rails/cmdb/db/migrate/20200525080817_create_customers.rb:3:in `change'
bin/rails:4:in `require'
bin/rails:4:in `<main>'
Caused …Run Code Online (Sandbox Code Playgroud)