我想为Eclipse创建一个Google Closure
Compiler插件。我已经有一个弹出菜单项,用于将JavaScript文件编译为压缩版本。但是,如果每次保存时*.js
都会自动生成一个缩小的版本,那么它将大有帮助。我已阅读/听说过有关自然和建筑,扩展点和的内容IResourceChangeListener
。但是我没有弄清楚我应该使用什么,尤其是如何使它工作。
是否有一个实用的插件实例可以执行“相同的事情”,以便我可以从中进行工作或编写教程来编写此类插件?
在下面的答案中,我搜索了使用的项目,IResourceChangeListener
并提出了以下代码:
清单:http://codepaste.net/3yahwe
plugin.xml
:http://codepaste.net/qek3rw
激活器:http :
//codepaste.net/s7xowm
DummyStartup:http
://codepaste.net/rkub82
MinifiedJavascriptUpdater:http
://codepaste.net/koweuh
在MinifiedJavascriptUpdater.java
其中保存了IResourceChangeListener
该resourceChanged()
函数的代码,因此从未实现过。
从这里回答http://www.eclipse.org/forums/index.php/t/362425/
解决方案是将代码放入激活器并摆脱MinifiedJavascriptUpdater
:
package closure_compiler_save;
import org.eclipse.ui.plugin.AbstractUIPlugin;
import org.osgi.framework.BundleContext;
/**
* The activator class controls the plug-in life cycle
*/
public class Activator extends AbstractUIPlugin {
// The plug-in ID
public static final String PLUGIN_ID = "closure-compiler-save"; //$NON-NLS-1$
// The shared instance
private static Activator plugin;
/**
* The constructor
*/
public Activator() {
} //gets here
@Override
public void start(BundleContext context) throws Exception {
super.start(context);
Activator.plugin = this;
ResourcesPlugin.getWorkspace().addResourceChangeListener(new IResourceChangeListener() {
public void resourceChanged(IResourceChangeEvent event) {
System.out.println("Something changed!");
}
});
}
@Override
public void stop(BundleContext context) throws Exception {
Activator.plugin = null;
super.stop(context);
}
/**
* Returns the shared instance
*
* @return the shared instance
*/
public static Activator getDefault() {
return plugin;
}
}
日志: 2021-05-09 14:04:19.356错误22211---[nio-8080-exec-2]O.A.C.C.C.[.[.[/].[dispatcherServlet]:servlet.Service()对于路径[]上下文中的servlet[dispatcherServlet]抛出异常[请求处理失败;嵌套异常为java.lang.NullPointerException:无法调用“c
Vim的插件配置方式,在你仅仅添加一个文件来自定义自己的Vim体验时很合理, 但当你想要使用别人写的插件时,这种方式会导致一团糟。 在过去,要想使用别人写好的插件,你得下载所有文件并逐一正确地放置它们。 你也可能使用zip或tar来替你做放置的工作。 在这个过程中有些明显的问题: 当你想更新插件的时候怎么办?你可以覆盖旧的文件, 但如果作者删除了某个文件,你怎么知道你要手工删除对应文件? 假如有两
我面临着使用Spring数据JPA存储库将数据保存到数据库的问题。 我的场景是:我使用循环逐个收集和保存数据。收集所有数据需要很多时间。因此,我想将每个记录的数据立即保存到表中并保存到数据库中。我正在使用saveAndFlush方法,但数据并没有立即保存到表中。 我迫不及待地要收集所有数据,因为收集所有数据可能需要一整天。
问题内容: 我希望HTML表单在提交后不执行任何操作。 这是不好的,因为它会导致页面重新加载。 基本上,我希望每当按下按钮或有人在键入数据后单击“输入”时都调用ajax函数。是的,我可以删除表单标签并添加,只需从按钮的onclick事件中调用该函数即可,但是我也希望“命中进入”功能而不会引起任何麻烦。 问题答案: 通过在通过“提交”按钮调用的javascript中使用,可以停止提交表单。 基本上,
如果具有匹配ID的值不存在,则需要将值插入表中,如以下线程中所示:SQL-insert Where not Exists 但是我需要确保如果另一个线程在完全相同的时间执行一个查询,我不会得到两个相同的行。 这是我的桌子: 这是我当前的查询,如果的本地化行不存在,则会插入一个新的本地化行(不幸的是,它工作不正确-现在我的数据库中有重复项): 这导致现在我有许多行具有相同的,我现在无法删除它们,它们在
我正在使用Ansile 2.0.1.0和Docker。 我想连接到容器以在Ansbile中创建一个Docker容器。 也是变量中要管理的容器的名称。 但是当执行时,我得到错误消息。 我猜是因为它使用了var来宿主。 我如何修复错误?