我一直在尝试使用Java的ProcessBuilder在Linux中启动应该"长期"运行的应用程序.该程序运行的方式是启动一个命令(在这种情况下,我正在启动一个媒体播放应用程序),允许它运行,并检查以确保它没有崩溃.例如,检查PID是否仍处于活动状态,然后重新启动该进程(如果已经死亡).
我现在遇到的问题是PID在系统中仍然存在,但应用程序的GUI挂起.我尝试将ProcessBuilder(cmd).start()转换为一个单独的线程,但这似乎并没有解决任何问题,正如我希望的那样.
基本上结果是,对于用户来说,程序APPEARS已经崩溃,但是杀死驱动ProcessBuilder.start()进程的Java进程实际上允许创建的进程恢复其正常行为.这意味着Java应用程序中的某些东西干扰了生成的进程,但此时我完全不知道是什么.(因此为什么我尝试将它分成另一个线程,似乎没有解决任何问题)
如果有人有任何意见/想法,请让我知道,因为我不能为我的生活想到如何解决这个问题.
编辑:我不关心从Process创建的I/O流,因此没有采取任何措施来解决这个问题 - 这是否会导致流程本身挂起?
请原谅我,因为我对SQL比较陌生.但我试图从一个表上的SELECT查询中获取修改后的数据,并使用它将数据填充到另一个表中.
SELECT ID FROM TABLE WHERE VALUE=10
Run Code Online (Sandbox Code Playgroud)
我想将结果ID插入另一个表中,但修改后的值为:
1stString.ID.2ndString
Run Code Online (Sandbox Code Playgroud)
我已经找到了如何在插入中使用SELECT中的ID的答案,但是在尝试连接时我似乎无法使其工作.我正在插入其他值,但它们是文字(我正在尝试初始化另一个表中给出的ID的默认键设置.
使用MS SQL Studio 2008,顺便说一句.
所以,我已经编程了一段时间,但由于我还没有参与过许多大型模块化项目,我之前没有遇到过这个问题.
我知道C++中的.dll是什么,以及它们是如何被使用的.但每当我在Java中看到类似的东西时,它们总是与源代码打包在一起.例如,如果我想将Java库提供给其他人,但是不公开源代码,我该怎么办?而不是源代码,我只是将一个库以及一个Javadoc或类似的东西与公共方法/函数一起提供给另一个程序员,然后他们可以在他们自己的Java代码中实现它们.
例如,如果我想创建一个可以被另一个程序员"借用"的SAX解析器,但是(出于某种原因 - 在这个具体示例中无法想到lol)我不想公开我的源代码.也许有一个我不想被利用的登录 - 我不知道.
但是这样做的Java方法是什么?使用C++,.dll文件使它变得更容易,但到目前为止我从未遇到过Java等价物.(我是Java的新手,也是一个非常新的"现实世界"程序员,一般而言)
我发现这个老帖子肯定有助于我的问题,但我注意到它似乎并没有解决我的问题.我已经收集到我需要为我的活动设置android:windowSoftInputMode ="adjustPan".但问题在于它根本不能平息.
文本字段位于视图的底部,当键盘显示时,视图稍微移动,但仅移动EditText的最顶部.文本字段已启用自动填充功能,当它开始显示自动填充选项时,视图会稍微向下缩小,但实际上会被自动填充选项进一步遮挡.它使文本输入字段非常难以使用,因为您无法看到正在键入的任何内容.
它是一个多行输入字段,当文本滚动到下一行时,视图平移得更远,因此您实际上可以看到前一行文本.但你看不出你在打字的东西,我觉得这很重要.
有没有人对解决这个问题有任何想法?
我现在开始在SVN办公室采用Git作为我的个人工作流程,所以git-svn是我将依赖的工具.我遇到的一个我不知道如何解决的问题是如何忽视一个方向.
我的具体用例是我们的ant构建文件引用了svn和svnversion之类的东西.显然,如果我使用git-svn,我不打算使用其中任何一个.我已经在我的本地build.xml中使用git等效替换它们,这些工作正常.
但是,我显然不想在git svn dcommit中提交更改.我想在本地保留这个更改,并在本地提交它,所以我不会丢失它,但我不希望它再次提交回主SVN仓库,因为它会破坏整个公司对SVN的使用, 如果我做.在这个问题中提出了仅使用SVN的类似案例.
有没有任何解决方案可以让我在本地提交build.xml,继续从SVN(它有很多与SVN无关的东西)进行build.xml更改,并且永远不会使用dcommit提交备份,而不会跳转每次我尝试提交时通过篮球?
我不确定这是否可行,我找不到基于它的主题,但是如果它已被回答之前给我一个链接,那就是那个.
我现在要做的是调整一些默认的Android小部件,特别是DatePicker和TimePicker,以便在Activity中使用.但据我所知,修改Picker(沿负方向)的宽度或高度的唯一结果是导致裁剪视图,而不是窗口小部件的缩放/拉伸视图.
我对自己的自定义小部件持开放态度,但我真的更喜欢让这个项目尽可能简单和干净,尽可能地匹配Android OS UI,因此使用本机DatePicker和TimePicker似乎是一个合乎逻辑的选择对我来说.如果有人知道如何缩小这些小部件而不是裁剪它们,我真的很感激.
谢谢.
这是一个复杂的情况,但基本上这里发生的事情是我们的分支已经与主人分开了.基本上:
A - B - C master
\
X - Y - Z feature
Run Code Online (Sandbox Code Playgroud)
变成了:
A - B - C master
(A) - (B) - X - Y - Z feature
Run Code Online (Sandbox Code Playgroud)
对于A /(A)和B /(B),SHA是相同的.这正是它在GitK中的表现.在这一点上,我只是试图基本上按照以前的顺序将其恢复.不幸的是,由于SHA看起来是相同的,我不知道如何操纵X来分支出B而不是(B).老实说,我不知道从哪里开始尝试这种恢复.如何在提交B重新连接两个分支?
请注意,我已经看到了这个问题,但它似乎是一个稍微不同的问题,因为B和(B)的sha-1是相同的,因为它没有被改变.