Jenkins支持参数化构建.
我有一个部署版本,需要通过参数指定标记部署.(将特定标签部署到生产中)
使用git插件有一个简单的方法吗?
我尝试添加参数TAG_NAME,然后将作业的git插件部分中的branch_specifier设置为$ TAG_NAME.不要工作.我明白了:
ERROR: Couldn't find any revision to build. Verify the repository and branch configuration for this job.
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
我正在为我编写的Java程序制作一个迷你ORM ...我的数据库中的每个表都有一个类,都继承自ModelBase.
ModelBase 是抽象的,提供了一堆静态方法,用于从db中查找和绑定对象,例如:
public static ArrayList findAll(Class cast_to_class) {
//build the sql query & execute it
}
Run Code Online (Sandbox Code Playgroud)
所以你可以做一些事情,比如ModelBase.findAll(Albums.class)获得所有持久专辑的列表.我的问题是,在这个静态上下文中,我需要从具体类Album中获取相应的sql字符串.我不能有像这样的静态方法
public class Album extends ModelBase {
public static String getSelectSQL() { return "select * from albums.....";}
}
Run Code Online (Sandbox Code Playgroud)
因为Java中没有静态方法的多态性.但我不想创建getSelectSQL()一个实例方法,Album因为我需要创建一个实例,只是为了获得一个在行为上非常静态的字符串.
目前,findAll()使用反射来获取相关类的相应sql:
select_sql = (String)cast_to_class.getDeclaredMethod("getSelectSql", new Class[]{} ).invoke(null, null);
Run Code Online (Sandbox Code Playgroud)
但这非常糟糕.
那么任何想法?这是我一次又一次的一般问题 - 无法在类或接口中指定抽象静态方法.我知道为什么静态方法多态不会也无法工作,但这并不能阻止我再次使用它!
是否有任何模式/构造允许我确保具体的子类X和Y实现一个类方法(或者失败,类常量!)?
所以,摆弄EasyGrep.vim插件,尝试让它进入适合我的状态.我正在使用它来递归搜索Rails项目.我几乎得到了我想要它,这是我修改的EasyGrep执行的grep命令的一个例子:
:grep -R -i --include=*.rb --include=*.rbw --include=*.gem --include=*.gemspec --include=[rR]akefile --include=*.erb --include=*.rhtml SEARCH_WORD .
Run Code Online (Sandbox Code Playgroud)
在光标下找到该单词,并在快速列表中打开搜索结果.
唯一的问题是,:grep似乎会自动将包含第一个匹配的文件打开到当前缓冲区,我不希望它这样做,因为那时我丢失了我刚才看到的文件.
有谁知道我怎么能防止这种行为?或者,至少一个hacky解决方法重新打开我正在搜索的文件?
:vimgrep不是一个选项 - 它太慢了.
所以在使用jQuery延迟并且$.when并行加载许多对象.
$.when(
a.ajax(), b.ajax(), c.ajax()
).then(
//do something when all are complete
complete();
);
Run Code Online (Sandbox Code Playgroud)
现在,b.ajax()有时会失败,但我真的不在乎.我只想等到所有调用完成后再调用complete().
不幸的是,一旦b失败,when()拒绝,并且永远不会触发then()回调.这是AFAIK的预期行为$.when(),但在这种情况下非常适合我.
我实际上想要一种说法:
$.when(
a.ajax(), b.ajax().fail(return success), c.ajax()
).then(...)
Run Code Online (Sandbox Code Playgroud)
或者可能有不同的使用方式when(),或更合适的构造?
我有一个C#程序,它使用SQL Server管理对象(SMO)接口触发SQL Server代理作业.它看起来像:
Server ssis_server = new Server(
new ServerConnection(SERVER_NAME, SERVER_USERNAME, SERVER_PASSWORD)
);
var agent = ssis_server.JobServer;
var ssis_job = agent.Jobs[job_name];
var current_status = ssis_job.CurrentRunStatus;
if (current_status == JobExecutionStatus.Idle)
{
ssis_job.Start();
OnSuccess("Job started: " + job_name);
}
else
{
OnError("Job is already running or is not ready.");
}
Run Code Online (Sandbox Code Playgroud)
此时我正在使用SQL Server身份验证来简化操作.
现在,我的问题是,除非它SERVER_USERNAME是'sysadmin'dbo角色的一部分,ssis_job.CurrentRunStatus总是' Idle' - 即使我知道作业正在运行.它没有错误,只是总是报告空闲.
如果用户是管理员,则按预期返回状态.
你说的角色会员?
好吧,我将SERVER_USERNAMESQL Server登录添加到msdb Role SQLAgentOperatorRole,这似乎没有帮助.
作业的所有者是系统管理员帐户 - 如果这是问题,我不知道如何解决它.
有任何想法吗?
我有一个在Mac和Windows上运行的Java应用程序,直接在没有安装的CD/DVD上运行.现在,我需要在本地文件系统的某处存储一个包含每用户数据(想想收藏夹等)的文件,以便可以写入.
那么,您认为这个文件的位置在哪里?我想的是:
<USER_DOCUMENTS_AND_SETTINGS>/application data/myapp/favourites.db 用于windows
<USER_HOME_DIR>/.myapp/favourites.db for mac/nix
思考?有没有人知道在Java中确定这些路径的最佳方法?