从2019年1月起,Oracle将要求对Java 8更新进行商业许可.目前我们正在使用oracle jdk,我们希望切换到amazon corretto JDK.但是,Amazon Corretto不适用于Centos 7.我们计划使用Zulu JDK,因为它提供频繁的软件更新.我们需要支付使用Zulu JDK的费用吗?建议我在亚马逊发布Corretto之前可以自由使用JDK的一些选项.
我尝试使用 jcmd(从 git bash 控制台窗口)进行堆转储:
$ /c/Program\ Files/Java/jdk1.8.0_202/bin/jcmd 25156 GC.heap_dump filename=livetest-grindtohalt.hprof
25156:
Heap dump file created
Run Code Online (Sandbox Code Playgroud)
但是,该文件似乎不存在:
$ find -name livetest-grindtohalt.hprof
$
Run Code Online (Sandbox Code Playgroud)
我在哪里可以找到它?
下面的类使用一个JInternalFrame来保存一个Textarea,它显示所有重定向的println和err语句.
public class ConsoleFrame extends JInternalFrame
{
JTextArea outArea = new JTextArea(10,100);
static JInternalFrame cons;
public ConsoleFrame()
{
outArea.setLineWrap(true);
JScrollPane pain = new JScrollPane(outArea);
//pain.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_ALWAYS);
this.add(pain);
this.setVisible(true);
this.setSize(1000,400);
this.setTitle("Groovy Console");
this.closable = false;
this.maximizable = false;
this.isSelected = true;
this.resizable = false;
BasicInternalFrameUI ui = (BasicInternalFrameUI)this.getUI();
Component north = ui.getNorthPane();
MouseMotionListener[] actions =
(MouseMotionListener[])north.getListeners(MouseMotionListener.class);
for (int i = 0; i < actions.length; i++)
north.removeMouseMotionListener( actions[i] );
this.setFocusable(false);
//logger
System.setErr(new PrintStream(new JTextAreaOutputStream(outArea)));
System.setOut(new PrintStream(new JTextAreaOutputStream(outArea)));
setConsole(this);
}
static public JInternalFrame getConsole(){ …Run Code Online (Sandbox Code Playgroud) 我一直在问Haskell中关于并发性的几个问题,特别是TVar我对Livelock的问题有所顾虑TVar.
相反,我提出了这个解决方案.
(1)将程序中的所有共享数据包装在一个数据结构中,并将其包装在一个数据结构中IORef.(2)只需使用即可进行任何更改atomicModifyIORef.
我相信这可以防止死锁和活锁(而TVar只会阻止前者).此外,因为atomicModifyIORef简单地将另一个thunk链接到一个链(这是一对指针操作),这不是一个瓶颈.对数据的所有实际操作可以并行完成,只要它们不相互依赖.Haskell运行时系统将解决这个问题.
但是我觉得这太简单了.我错过了什么"陷阱"吗?
给定 a Map[Int, Set[Int]],如何修改 Map 的单个值,在此过程中生成一个新值,例如:
val x = Map(1 -> Set(1,2,3))
x(1) + 5 // This creates a new Set, but not a new Map
val y = x(1) change { x => x + 5 }
// The previous functionality is what I'm looking for
// z: Set[Int]] = List(Set(1, 2, 3, 5))
Run Code Online (Sandbox Code Playgroud) 我从mediawiki下载了类别和categorylinks表sql.gz文件,并生成了所需的表:
类别和类别链接
表格手册: CategoryLinks 类别
请考虑以下类别页面:NoSQL 此页面的父类别是数据库和数据库管理.我如何从这两个表中获取此信息?类别表的手册说明如下,但我无法获得该信息:"
注意:页面和子类别存储在categorylinks表中."
这是我之前提出的问题的后续行动.如果方式更新列表中,我想IORef在下面接受的解决方案是O(1)或不是,在每一个电话fetch.我怀疑这是因为IORef可能只是保持指向列表头部的指针(而不是遍历和复制整个列表,每次都是O(n).只需将指针更改为新头应为O(1),并且应该防止急切评估整个列表).但是,ghc-core不会显示低级代码.所以,问这里:
mklstream :: L.ByteString -> (IO S.ByteString -> IO r) -> IO r
mklstream lbs sink = do
ref <- newIORef (L.toChunks lbs)
let fetch :: IO S.ByteString
fetch = do chunks <- readIORef ref
case chunks of
[] -> return S.empty
(c:cs) -> do writeIORef ref cs
return c
sink fetch
Run Code Online (Sandbox Code Playgroud) 在git hooks中 - 我想在推送之前检查jshint错误和纱线完整性检查,所以我在推送前添加了以下内容.所以它是这样的 -
# Pre-push hooks
# Lint stuff before committing
grunt jshint eslint tslint
# Verifies that versions and hashed value of the package contents
in the project’s package.json matches that of yarn’s lock file.
yarn check --integrity
Run Code Online (Sandbox Code Playgroud)
因此,只有在最后一次检查失败时它才会失败,而在其他情况下,它会指出错误但仍会推送它
我目前正在开发一个简单的Web项目,我正在使用Polarion的SDK .尝试使用相应的*.jar-Files时,Tomcat 7会在启动时抛出以下错误消息:
SCHWERWIEGEND: Exception sending context initialized event to listener instance of class org.apache.myfaces.webapp.StartupServletContextListener
java.lang.NoClassDefFoundError: Lcom/polarion/alm/ws/client/session/SessionWebService;
Run Code Online (Sandbox Code Playgroud)
根据我所进行的研究,Java正试图找到com.polarion.ws.client.session.SessionWebService 的实例(因此是领先的L).我已经检查了所需条目的类路径 - 它就在那里.
C:\Polarion\polarion\SDK\lib\com.polarion.alm.ws.client\wsclient.jar
Run Code Online (Sandbox Code Playgroud)
截至目前,我已经完成了可能出错的想法.你有什么想法?
非常感谢!西蒙
我刚刚开始在大学学习java课程,我想链接两个数组.
我创建了一个名为StudentID []的一维数组,这将存储学生ID.
我创建了另一个名为SubjTaken [] []的2D数组,其中包含主题,学分,成绩字母.
现在,我想链接这两个数组.例如,
Inpute将是:
输入学生ID:
123456
进入主题:
MATH101 4 A.
PHYS201 3 B +
然后它将它们存储在两个数组中.并且以后可以调用它.例如:
输入学生ID:
123456
您要采取的主题是:
MATH101 4 A.
PHYS201 3 B +
我的问题是:我不知道如何与他们建立链接.如果我有5个学生,我需要有5个2d阵列,我需要链接其中的每个.我想到了数组中的数组.寻求帮助.