我在Java中给出了一个byte []数组,其中包含图像的字节,我需要将其输出到图像中.我该怎么做呢?
非常感谢
我有一个可执行的 Jar,它使用反射来访问一些 java 内部(实际上我正在着色一些第三方库,如 Netty、DNSJava...)
我看到将此条目添加到 Jar 的 MANIFEST 中
Add-Opens: java.base/sun.net.dns
Run Code Online (Sandbox Code Playgroud)
解决了我的第一个问题:
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.xbill.DNS.ResolverConfig (file:/home/diennea.lan/enrico.olivelli/dev/magnews/magnews.installer/target/magnews-24.05-SNAPSHOT.dev-b199bacf8f2-noci-installer.jar) to method sun.net.dns.ResolverConfiguration.open()
WARNING: Please consider reporting this to the maintainers of org.xbill.DNS.ResolverConfig
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
Run Code Online (Sandbox Code Playgroud)
但现在我有第二个警告:
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.postgresql.jdbc.TimestampUtils …Run Code Online (Sandbox Code Playgroud) 我不确定我是否正在获得Java Period和Java之间的微妙之处Duration.
当我阅读Oracle的解释时,它说我可以找出自生日这么多天以来(使用他们使用的示例日期):
LocalDate today = LocalDate.now();
LocalDate birthday = LocalDate.of(1960, Month.JANUARY, 1);
Period birthdayPeriod = Period.between(birthday, today);
int daysOld = birthdayPeriod.getDays();
Run Code Online (Sandbox Code Playgroud)
但正如他们所指出的那样,这并没有考虑到你出生的时区和你现在所处的时区.但这是一台电脑,我们可以准确,对吗?我会用一个Duration吗?
ZoneId bornIn = ZoneId.of("America/New_York");
ZonedDateTime born = ZonedDateTime.of(1960, Month.JANUARY.getValue(), 1, 2, 34, 56, 0, bornIn);
ZonedDateTime now = ZonedDateTime.now();
Duration duration = Duration.between(born, now);
long daysPassed = duration.toDays();
Run Code Online (Sandbox Code Playgroud)
现在实际时间是准确的,但如果我理解正确,日期可能无法正确表示日历日,例如使用DST等.
那么我该怎样做才能根据我的时区得到准确的答案?我唯一能想到的是回到使用LocalDate,但首先从ZonedDateTime值中规范化时区,然后使用a Duration.
ZoneId bornIn = ZoneId.of("America/New_York");
ZonedDateTime born = ZonedDateTime.of(1960, Month.JANUARY.getValue(), 1, 2, 34, 56, 0, …Run Code Online (Sandbox Code Playgroud) 在实施细节中HashMap,我可以阅读:
When using comparators on insertion, to keep a
* total ordering (or as close as is required here) across
* rebalancings, we compare classes and identityHashCodes as
* tie-breakers.
Run Code Online (Sandbox Code Playgroud)
如果我有恒定hashCode和精细equals,我的班级没有实现Comparable它将如何打破关系以及如何构建树?
我的意思是 - 斗将变成一棵树,System.identityHashCode用来打破平局.然后我会尝试调用containsKey方法与不同的实例(这将具有相同的hashCode和a.equals(b) == true)就会有不同的identityHashCode所以是有可能,树会被错误的节点进行遍历(左不是右),它会找不到钥匙?
我错过了什么或者这是正常行为吗?
通过使用 Blockhound io.projectreactor.tools blockhound-junit-platform我发现 UUID.randomUUID 是一个阻塞调用,这对我们来说是一个问题,因为我们使用的是 Spring Boot Webflux 版本 2.2.2.RELEASE
有没有其他方法可以以非阻塞方式获取随机 uuid,或者是否有任何其他 Java 库推荐用于非阻塞生成随机字符串。
来自blockhound的堆栈跟踪:
java.lang.Error: Blocking call! java.io.FileInputStream#readBytes
at reactor.blockhound.BlockHound$Builder.lambda$new$0(BlockHound.java:196) ~[blockhound-1.0.1.RELEASE.jar:na]
Suppressed: reactor.core.publisher.FluxOnAssembly$OnAssemblyException:
Error has been observed at the following site(s):
|_ checkpoint ? org.springframework.boot.actuate.metrics.web.reactive.server.MetricsWebFilter [DefaultWebFilterChain][ExceptionHandlingWebHandler]
Stack trace:
at reactor.blockhound.BlockHound$Builder.lambda$new$0(BlockHound.java:196) ~[blockhound-1.0.1.RELEASE.jar:na]
at reactor.blockhound.BlockHound$Builder.lambda$install$6(BlockHound.java:318) ~[blockhound-1.0.1.RELEASE.jar:na]
at reactor.blockhound.BlockHoundRuntime.checkBlocking(BlockHoundRuntime.java:46) ~[na:na]
at java.base/java.io.FileInputStream.readBytes(FileInputStream.java) ~[na:na]
at java.base/java.io.FileInputStream.read(FileInputStream.java:279) ~[na:na]
at java.base/java.io.FilterInputStream.read(FilterInputStream.java:133) ~[na:na]
at java.base/sun.security.provider.NativePRNG$RandomIO.readFully(NativePRNG.java:424) ~[na:na]
at java.base/sun.security.provider.NativePRNG$RandomIO.ensureBufferValid(NativePRNG.java:526) ~[na:na]
at java.base/sun.security.provider.NativePRNG$RandomIO.implNextBytes(NativePRNG.java:545) ~[na:na]
at java.base/sun.security.provider.NativePRNG.engineNextBytes(NativePRNG.java:220) ~[na:na]
at java.base/java.security.SecureRandom.nextBytes(SecureRandom.java:741) ~[na:na]
at java.base/java.util.UUID.randomUUID(UUID.java:150) ~[na:na]
Run Code Online (Sandbox Code Playgroud) java uuid reactive-programming project-reactor spring-webflux
我试图在一个html页面中使用两个不同的脚本标记.第一个脚本标签我使用了js文件位置o使用该函数,而在其他脚本标签中我写了另一个函数.
在第二个脚本中有一个函数名称CALCULATION,它从src文件中调用.但是当我运行页面时,它给了我未捕获的ReferenceError:在onload错误中没有定义ActiveProj
<script type="text/javascript" src="../../SiteAssets/calculation.js" />
<script type="text/javascript" >
function ActiveProj() {
var startdate = '05/11/2017';
var endate = '08/15/2017';
calculation(startdate,endate);
}
</script>
<body onload="ActiveProj();">
Run Code Online (Sandbox Code Playgroud) 我正在使用下面的代码将java util日期转换为XML格里高利历日期,但转换是以某种方式将时区添加到日期.
GregorianCalendar gregorianCalendar = new GregorianCalendar();
gregorianCalendar.setTimeInMillis(dte.getTime());
XMLGregorianCalendar xmlGrogerianCalendar = DatatypeFactory.newInstance().newXMLGregorianCalendar(gregorianCalendar);
return xmlGrogerianCalendar;
Run Code Online (Sandbox Code Playgroud)
我不希望时区成为约会的一部分.任何人都可以指出我如何实现这一目标?
我有:
static public final ReentrantLock lock = new ReentrantLock();
static public Condition my_condition = lock.newCondition();
Run Code Online (Sandbox Code Playgroud)
在myClass_1和myClass_2I类电话:
synchronized (myClass_1.my_condition){
myClass_1.my_condition.signalAll();
}
Run Code Online (Sandbox Code Playgroud)
这给了我java.lang.IllegalMonitorStateException. 我已经在signall()通话中同步了。是什么原因造成的?
我在cmd提示符下尝试以下操作:
java> temp.txt
temp.txt正在创建,其中没有任何内容。“ java”命令输出显示在控制台本身中,而无需重定向到temp.txt
但是,如果我执行以下操作:
目录> temp.txt
dir命令的输出将重定向到临时文件。
为什么“ java”命令的输出未重定向到文本文件?
当我运行这段代码时,我StackOverFlowError在运行时得到一个。为什么会收到此异常?
class F{
String name;
int rollNo;
F ref;
F(String name,int rollNo){
this.name = name;
this.rollNo = rollNo;
ref = this;
}
public static void main(String[] args){
F f = new F("Shivam",138);
System.out.println(f);
}
public String toString(){
return name+" "+rollNo+" "+ref;
}
}
Run Code Online (Sandbox Code Playgroud)
这是我得到的异常:
Exception in thread "main" java.lang.StackOverflowError
at java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:449)
at java.lang.StringBuilder.append(StringBuilder.java:136)
at F.toString(F.java:20)
at java.lang.String.valueOf(String.java:2994)
at java.lang.StringBuilder.append(StringBuilder.java:131)
at F.toString(F.java:20)
at java.lang.String.valueOf(String.java:2994)
at java.lang.StringBuilder.append(StringBuilder.java:131)
at F.toString(F.java:20)
at java.lang.String.valueOf(String.java:2994)
Run Code Online (Sandbox Code Playgroud) 我的Java类有问题.实际上代码是正确的,但如果我单击运行按钮,则会导致图像路径异常.
static Image currentBackground = new Image("Snake/Images/background_options.png", true);
Run Code Online (Sandbox Code Playgroud)
编译器的消息是:
Exception in thread "main" java.lang.ExceptionInInitializerError
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:264)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:122)
Caused by: java.lang.IllegalArgumentException: Invalid URL: Invalid URL or resource not found
at javafx.scene.image.Image.validateUrl(Image.java:1100)
at javafx.scene.image.Image.<init>(Image.java:624)
at view.OptionsWindow.<clinit>(OptionsWindow.java:21)
... 3 more
Caused by: java.lang.IllegalArgumentException: Invalid URL or resource not found
at javafx.scene.image.Image.validateUrl(Image.java:1092)
... 5 more
Run Code Online (Sandbox Code Playgroud)
进程以退出代码1结束
有谁能够帮我?
代码:
package learning;
import javafx.application.Application;
import javafx.stage.Stage;
public class One extends Application {
public static void main (String[] args){
launch(args);
}
@Override
public void start(Stage stage) throws Exception {
}
}
Run Code Online (Sandbox Code Playgroud)
错误:
Exception in Application constructor Exception in thread "main"
java.lang.reflect.InvocationTargetException
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native
Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
at java.base/sun.launcher.LauncherHelper$FXHelper.main(LauncherHelper.java:1071)
Caused by: java.lang.RuntimeException: Unable to construct Application
instance: class learning.One
at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:893)
at javafx.graphics/com.sun.javafx.application.LauncherImpl.lambda$launchApplication$2(LauncherImpl.java:198)
at java.base/java.lang.Thread.run(Thread.java:833) Caused by:
java.lang.IllegalAccessException: class com.sun.javafx.application.LauncherImpl (in module javafx.graphics) cannot access class learning.One …Run Code Online (Sandbox Code Playgroud)