小编Mat*_*ias的帖子

如何忽略git中以#开头的文件

我想知道是否有可能(如果它可能如何实现)忽略以#git开头的#gitignore文件.我已经试过了

\\#.myfile
Run Code Online (Sandbox Code Playgroud)

没有运气.

git

19
推荐指数
1
解决办法
6528
查看次数

具有不同范围的依赖内的Maven依赖

假设我在如下项目中定义了两个Maven依赖项.

    <dependency>
        <groupId>com.thoughtworks.xstream</groupId>
        <artifactId>xstream</artifactId>
        <version>1.3.1</version>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>mycompany.library</groupId>
        <artifactId>mylibrary</artifactId>
        <version>1.0.1</version>
        <scope>compile</scope>
    </dependency>
Run Code Online (Sandbox Code Playgroud)

然后,在mylibrary中,我也有一个依赖定义如下.

    <dependency>
        <groupId>com.thoughtworks.xstream</groupId>
        <artifactId>xstream</artifactId>
        <version>1.3.1</version>
        <scope>compile</scope>
    </dependency>
Run Code Online (Sandbox Code Playgroud)

当我打包我的项目时,我没有看到xstream打包在其中.我认为项目的xstream依赖范围'test'覆盖了mylibrary的xstream依赖范围,'compile'.

在这种情况下,为整个项目包含xstream的最佳方法是什么,以便子模块在项目中打包时可以访问它?

我已经阅读过Apache Maven网站关于Transitive依赖关系的解释,但我很难理解它的含义,并且在这种情况下找出最佳实践.

java maven-2

14
推荐指数
2
解决办法
1万
查看次数

如何访问材料垫选择列表中的选择选项

我正在尝试访问材质垫选择列表组件(版本 7)的选定选项。我在这里找到了 selectedOptions 的文档。

我已经拼凑了一些 html/ts 行,这些行似乎让我可以访问所需的数据。但是,我认为这不是正确的方法。但是,我无法使用“著名的搜索引擎”找到建议。

我有以下 HTML (pizza.component.html)

<h1>Pizzas</h1>
<mat-selection-list #pizzaList (selectionChange)="onPizzasChange($event)">
    <mat-list-option *ngFor="let pizza of pizzas">
        {{pizza}}
    </mat-list-option>
</mat-selection-list>
Run Code Online (Sandbox Code Playgroud)

以及相应的打字稿文件(pizza.component.ts)

import { MatButtonModule } from '@angular/material/button';
import { Component, OnInit } from '@angular/core';
import { MatCheckboxModule } from '@angular/material/checkbox';
import { Pizza } from '../pizza';

@Component({
    selector: 'app-pizza-view',
    templateUrl: './pizza-view.component.html',
    styleUrls: ['./pizza-view.component.css']
})

export class PizzaViewComponent implements OnInit {

    pizzas: any;

    constructor( ) { }

    ngOnInit() {
        pizzas = [ 'Margherita', 'Funghi', 'Quattro Stagioni', 'Calzone' …
Run Code Online (Sandbox Code Playgroud)

angular-material angular

11
推荐指数
2
解决办法
2万
查看次数

如何将参数传递给emacs lisp中的另一个函数?

我在init.el中有一个方便的定义来做一些日志记录

(defvar log4me::loglevel 5
  "Global loglevel.")

(defun log4me (level logmsg)
  "Log message."
  (interactive)
  (when (>= level log4elisp::loglevel)
    (message logmsg))))
Run Code Online (Sandbox Code Playgroud)

它有点工作,但不知怎的,我经常这样做

  (log4me somelevel (format "mymessage with %d" 1))
Run Code Online (Sandbox Code Playgroud)

所以我发现了emacs lisp&rest参数,我认为我可能会这样使用:

(defun log4me (level logmsg &rest formatparams)
  "Log message."
  (interactive)
  (when (<= level log4elisp::loglevel)
    (message (format logmsg formatparams))))

(log4me 3 "Hello %ust!" 1)
Run Code Online (Sandbox Code Playgroud)

由于formatparams实际上是(1)而不是1,因此重新分析为"格式说明符与参数类型不匹配"错误.

有没有一种很好的方法可以将格式参数包含到log4elisp defun中,并使它们作为"普通"参数(不是单个列表)在格式函数调用中到达?

emacs elisp

9
推荐指数
1
解决办法
1270
查看次数

maven pom 的资源元素

我是 maven 的新手,遇到了资源部分。Maven 项目描述符(4.0 版)的参考声明“此元素描述了与项目或单元测试关联的所有类路径资源”(链接)。然而,这个描述我不理解/似乎对我来说是抽象的。为什么我要描述类路径资源?它如何影响项目生命周期?

马蒂亚斯

pom.xml maven

6
推荐指数
1
解决办法
9389
查看次数

合并分支而不提交消息

假设遵循"工作流程"

create branch master
add + commit some files
create and checkout branch dev
edit and commit several times with silly commit messages
checkout master
merge dev branch into master branch
Run Code Online (Sandbox Code Playgroud)

在最后一步中,是否可以不在dev分支上的提交中引入所有(愚蠢的)提交消息,并且只有一条提交消息,例如"今天合并的dev分支"?

马蒂亚斯

git merge

5
推荐指数
1
解决办法
6324
查看次数

用点对相同等级的节点进行排序

我正在使用 dot 绘制有向图。在这个图中,我想让处于相同等级的节点以预定义的顺序出现。这可能吗?

graph dot

5
推荐指数
1
解决办法
599
查看次数

如何调用maven默认生命周期

如果我打电话

mvn clean install
Run Code Online (Sandbox Code Playgroud)

maven知道clean是一个生命周期,安装是默认生命周期的一个阶段

如果我打电话

mvn deploy
Run Code Online (Sandbox Code Playgroud)

maven将按顺序执行默认生命周期的所有阶段.

有没有办法通过给出生命周期名称(而不是执行生命周期的最后一个phsae)来调用默认生命周期?

编辑:所以问题是:是否有命令

mvn lifecyclename
Run Code Online (Sandbox Code Playgroud)

开始执行默认生命周期?

lifecycle maven

4
推荐指数
2
解决办法
3613
查看次数

如何使用maven创建项目源的jar存档

我在项目对象模型中包含以下代码段

  <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-source-plugin</artifactId>
    <version>2.1.2</version>
  </plugin>
Run Code Online (Sandbox Code Playgroud)

根据maven.apache.org,该插件将jar目标附加到包阶段.但是,执行"mvn clean; mvn package"不会在目标目录中生成project-sources.jar.

编辑:我不明白网站的评论,我引用:"[来源:jar目标]默认绑定到生命周期阶段:包." 我预计,当我包含如上所示的插件部分时,maven已经将源:jar目标绑定到包阶段.我错了吗?评论意味着什么?

马提亚.

pom.xml maven maven-source-plugin

4
推荐指数
1
解决办法
5020
查看次数

如果两个可能条件中的任何一个成立,maven-antrun-plugin 跳过目标

我可以通过两个属性 A 和 B 传递给 Maven

 mvn test -DA=true
Run Code Online (Sandbox Code Playgroud)

或者

 mvn test -DB=true
Run Code Online (Sandbox Code Playgroud)

如果定义了 A 或 B,我希望跳过一个目标。我发现当只考虑 A 时是可能的:

  <plugin>
    <artifactId>maven-antrun-plugin</artifactId>
    <version>1.7</version>
    <executions>
      <execution>
        <id>skiptThisConditionally</id>
        <phase>test</phase>
        <configuration>
          <target name="anytarget" unless="${A}">
             <echo message="This should be skipped if A or B holds" />
          </target>
        </configuration>
        <goals>
          <goal>run</goal>
        </goals>
      </execution>
    </executions>
  </plugin>
Run Code Online (Sandbox Code Playgroud)

现在也必须考虑B。这能做到吗?

马蒂亚斯

ant conditional maven maven-antrun-plugin

3
推荐指数
1
解决办法
7026
查看次数

通过 ObjectInputStream 和瞬态字段进行序列化

这个问题是关于 ObjectInputStream 以及它如何构建声明为瞬态的字段。考虑 ObjectInputStream 的一个简单用例

FileInputStream fis = new FileInputStream("t.tmp");
ObjectInputStream ois = new ObjectInputStream(fis);
SomeClass sc = (SomeClass) ois.readObject();
Run Code Online (Sandbox Code Playgroud)

SomeClass 在哪里

class SomeClass {
   int x;
   transient OtherClass y;
}

class OtherClass {
   int z;
}
Run Code Online (Sandbox Code Playgroud)

ois.readObject 之后 sc.y 的值是多少?

我要求澄清我在docs.oracle.com上读到的内容,其中指出

“反序列化过程会忽略声明为瞬态或静态的字段。对其他对象的引用会导致根据需要从流中读取这些对象。”

忽略瞬态场是什么意思?如果它们是瞬态的(即未序列化 - 我如何理解它......),如何从流中读取它们

马蒂亚斯

java serialization transient objectinputstream

2
推荐指数
1
解决办法
1319
查看次数

在 QTextEdit 子类中连接信号和插槽?

我从 QTextEdit 派生了一个类并将其用作“日志”。我为它配备了一个插槽来接收日志消息。

class CLogbook : public QTextEdit
{
   Q_OBJECT;
    public:
    void log(QString msg) {append(msg)};

    public slots:
    void recvLogSignal(const QString message)
    {    
         append("hallo");
         std::cout << "signal received.\n";    
         log(message);
    }
Run Code Online (Sandbox Code Playgroud)

};

另一个类然后发出这样的信号:

// in the header
signals:
    void logMessage(const QString);

// in the implementation
    emit logMessage("qt is cute");
    std::cout << "if you can read this the logMessage was emitted\n";
Run Code Online (Sandbox Code Playgroud)

我还将信号连接到插槽

connect(tableeditor, SIGNAL(logMessage(const QString)), logbook, SLOT(recvLogSignal(const QString)));
Run Code Online (Sandbox Code Playgroud)

但是,该消息从未显示在“日志”中。我在这里缺少什么?

已解决:发出信号后调用连接方法:-(

qt signals qtextedit slot

2
推荐指数
1
解决办法
3418
查看次数

如何在tomcat中的Filter class-method响应servlet客户端时设置http状态代码

我正在写一个带有spring的web服务(这个问题不是关于spring ...),它实现了一个(希望)安静的api.根据我的理解,所有响应都应该是xml或json格式.在大多数情况下,这并不是什么大问题.但在某种情况下,这似乎是不可能的.我正在使用tomcat中的一个设备,其中涉及servlet.我出于某种原因必须使用过滤器(这个原因是身份验证).由于我是servlets的新手,我的理解最终还不是很好,但对我而言,它看起来像这样

我的filter-class派生自javax.servlet.filter,我在doFilter方法中编写代码:

@Override
public void doFilter(ServletRequest request, ServletResponse response,
                          FilterChain chain) throws IOException, ServletException { // ... }
Run Code Online (Sandbox Code Playgroud)

在某些时候,我意识到我必须用http状态代码401响应客户端,并且还想给他一个关于发生了什么的xml或json信息.现在对我看起来好像我也可以

1)使用ServletResponse:这允许我获取OutputStream并写出我的xml/json.但是我根本无法设置http状态代码.到达客户端的最终响应确实包含一些http标头.

2)将ServletResponse转换为HttpServletResponse:这允许我设置状态代码,但我似乎无法设置响应体,但是让tomcat处理响应体.

无论哪种方式似乎都不完整 如果我使用ServletResponse写入OutputStream然后转换为HttpServletResponse然后调用sendError(401) - 希望我写给OutputStream的任何内容到达客户端 - 我的响应不包含http"状态行".但是http头文件就像"Server:Apache-Coyote/1.1"

任何帮助欢迎...

java tomcat servlets filter

1
推荐指数
2
解决办法
3万
查看次数