- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我有与下面类似的设置:
<extension
id="product"
point="org.eclipse.core.runtime.products">
<product
name="%product.name"
application="org.eclipse.e4.ui.workbench.swt.E4Application">
<property
name="lifeCycleURI"
value="bundleclass://plugin-id/package.LifeCycle">
</property>
.... more properties ...
public class LifeCycle
{
@PostConstruct
public void doWork()
{
// Show a login screen. If the user cancels out of it, shut down
// the application.
}
}
在上述场景中,正确关闭应用程序的正确方法是什么?如果我这样做:
PlatformUI.getWorkbench().close()
我收到错误,因为它尚未初始化。如果我这样做:
System.exit(0)
然后我杀死 JVM 上的所有其他东西(尽管建议在这里这样做 http://www.vogella.com/tutorials/Eclipse4LifeCycle/article.html )
关于如何做到这一点有什么想法/建议吗?
最佳答案
PlatformUI
在 e4 应用程序中不可用,请勿尝试使用它。
@PostConstruct
在 LifeCycle 类中执行任何操作还为时过早。您应该尝试执行任何操作的第一点是 @PostContextCreate
方法。
您可以注入(inject)org.eclipse.e4.ui.workbench.IWorkbench
并调用close
方法来关闭e4应用程序。但是,直到应用程序启动完成后,工作台才可用,因此您需要等待此事件。
public class LifeCycle
{
@PostContextCreate
public void postContextCreate(IEclipseContext context, IEventBroker eventBroker)
{
...
eventBroker.subscribe(UIEvents.UILifeCycle.APP_STARTUP_COMPLETE,
new AppStartupCompleteEventHandler(eventBroker, context));
}
}
class AppStartupCompleteEventHandler implements EventHandler
{
private IEventBroker _eventBroker;
private IEclipseContext _context;
AppStartupCompleteEventHandler(IEventBroker eventBroker, IEclipseContext context)
{
_eventBroker = eventBroker;
_context = context;
}
@Override
public void handleEvent(final Event event)
{
_eventBroker.unsubscribe(this);
IWorkbench workbench = _context.get(IWorkbench.class);
workbench.close();
}
}
关于java - Eclipse RCP - 如何在工作台初始化之前关闭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28507982/
我创建了一个包含两个字段的用户表:用户名和密码。我将密码设置为不为空。 问题是当我输入数据而不包括密码时,我可以在密码字段中插入值。 我的目标是不允许任何没有用户名和密码的条目进入数据库。我认为 no
不知何故,我更改了设置或其他内容,现在当我将数据库导出为正向工程脚本时,它会在每个表中的每一列之后添加一个空的 COMMENT '' 字符串。有没有人经历过这种情况,我怎样才能让它停止? 我已经仔细检
为什么我不能这样做?我想从 TABLEA 中搜索大于光标值的最接近的值,对两者执行平均函数并将结果放入 test3 中。我收到错误代码 1054 未知列“Xnearest in 'field list
看起来 MySQL Workbench 现在支持 JSON 功能,但是我仍然看到 MySQL 5.7.9 功能上的解析器错误,例如“->”运算符。 当我使用以下查询时,我在“$.test”部分遇到语法
每次我将其插入表字段时,我都拼命地尝试让数据库将 0 替换为 1。我有一个名为 Stazione 的字段,其中有“numerodibinari”,我不希望它为零。我已经尝试过这样的。 Create t
我试图通过创建名为“Klantwinkel”的第三个表来链接“Klant”和“Winkel”。这是我的代码: CREATE TABLE Klant ( klantnummer int(10)
当从我的笔记本电脑连接到我的服务器并查看数据库中的某个表时。所有数据都是乱码而不是希伯来语。 但是当我访问连接到数据库的网站时,一切正常,我可以看到希伯来语的数据。 所以我遇到的唯一问题是 MySQL
我在 MySql Workbench 中有两个表;类别和产品。我创建了第三个表,其中包含前两个表中的 PK。我如何区分哪个产品属于哪个类别。我需要创建第四张表吗?此外,很明显,一个类别有很多产品。如何
是否可以在 MySQL workbench 中设置表前缀?例如:我已经创建了完整的模式(table_1、table_2、table_3、... table_N),并希望 Workbench 在执行正向
我使用 Workbench 来实现数据库模式,但在某个表中使用外键时出现此错误。 1215 - Cannot add foreign key constraint SQL查询: CREATE TABL
我已经安装了 Business Central 以及 Keycloak 身份验证,使用 MySQL 作为数据库来存储 Keycloak 的数据。业务中心工作台和 Keycloak 服务器位于 Ngin
当尝试连接到需要 SSL 的数据库,但在 WorkBench 中 SSL 设置为“否”时,我在“正在打开 SQL 编辑器”上按了取消,它向我显示了错误: "无法访问已处置的对象对象名称:'HUDFor
我是mysql服务器的新手。 我使用最新版本的工作台。 使用设计器创建模型: 但在数据库中我看不到我的模型: 我不擅长 mysql 术语,但我想要得到这样的东西,我可以将数据插入到 Student 和
我正在为学校做一项作业,我正在尝试运行下表: CREATE TABLE teams (city VARCHAR(50) NOT NULL, nickname VARCHAR(50) NOT NULL,
如何将两个单独表中的列同时插入到 mysql 中的第三个表中?如果我使用两个插入查询,则第二个查询中的数据将放在第一个查询中的数据下方,但我希望它们出现在同一行上,而不是一个在另一个下面。 最佳答案
我正在约会组工作。目前它不会返回任何结果。我尝试过不同的过滤器或没有日期的组,它很好并且运行良好,但我需要根据日期或时间戳创建一个组。 这是一个代码 SELECT settlement_id,
我有一个名为 Customer 的 mySQL 数据库,我正在尝试从 GUI 中的文本字段插入数据。我运行了下面的代码,在控制台中显示“连接成功”,没有错误。我检查了信息是否已插入到 mySQL 数据
好的,这是我当前的代码 delimiter // Create procedure addFish(in_color varchar(45), in_pattern varchar(45)) BEGI
我们必须对数据库进行一些更改(创建表、运行特殊 SQL 查询)。 MySQL Workbench 中是否有某种方法可以导入结构,使用图形界面对其进行编辑,然后获取一些 SQL 代码,我可以用它来将旧结
当我运行特定查询时,我收到一条消息:“您的查询产生了 1 个警告。”我想确切地知道警告是关于什么的。如何查看警告的详细信息?我在 Windows 上使用 Workbench 版本 7。 最佳答案 您是
我是一名优秀的程序员,十分优秀!