设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6365|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
" }9 F. i6 d' q* z+ s# {- S0 ^  f
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
5 b7 p! i; L2 Z, C1 M* J以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 M' h# G& G- l& l) q- ^
swarm.SignatureNotFoundException
; D* A6 Q( {8 t" \        at swarm.Selector.<init>(Selector.java:76)5 O- R" U0 w, ]
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
9 Y! `6 e9 @* A; I' M        at ActionGroupDemo.main(ActionGroupDemo.java:67)
: |, V8 I% h2 c8 b0 J4 p7 N5 V$ s/ b9 Q7 t8 F8 x! L' q
8 m) i, t4 m4 w. b: v
import swarm.objectbase.SwarmImpl;9 _: x9 C( W4 {/ d0 T; p) i3 V6 r6 K/ H
import swarm.objectbase.Swarm;
; q! _: r( n$ q) g9 w0 I' Oimport swarm.activity.ScheduleImpl;
; t- y: V3 v# a8 {; m9 uimport swarm.activity.Activity;/ x( ^: w- p* |: e
import swarm.activity.ActionGroupImpl;; c& h+ F) q9 H! E) _! Q# k4 r6 H
import swarm.collections.ListImpl;
( E+ O6 m$ ~' y5 ximport swarm.defobj.Zone; * @: e+ \6 M8 k/ {# J* j, m
import swarm.Globals;: ]; f: r  `; H( g
import swarm.Selector;% e9 N" _' v  U
import swarm.activity.ActionGroup; $ P0 y! \+ m& i8 k+ P' l
class Agent {
$ q) r3 a* N1 v! ~0 U: A4 ~% F        char id;% u" ^6 x1 W5 s" E! g+ |4 V

1 y- w. Y7 ], _+ g        Agent(char id) {
) t! O* G3 p% `# R' k' A                this.id = id;  K8 |' B/ t9 F; v  x6 B* B
        }
  P: }4 R* t0 @( I" Q" N$ y
  `  i; ~: b1 B7 a4 v. W8 C        public void agentStep() {% c7 n; @, M# D* _  V, J& ]2 l
                System.out.println(id + ":" + Globals.env.getCurrentTime());
* e8 @% D: o) n$ ?" e- P* j& [        }
& A/ Y2 d/ Z0 `7 }}1 G6 S* @" D+ ?1 s$ \$ y% I
0 R; }# w, v- j  P4 J
public class ActionGroupDemo extends SwarmImpl {' m- I+ |5 d0 g9 d
        ScheduleImpl schedule;9 n6 y. q6 t1 U, R0 G* O5 r
        ActionGroupImpl actionGroup;3 e6 z; C5 f7 s, x0 O6 y
        ListImpl list;
, m) k% O% j& j+ e5 D        char Id = 'a';" U& |! J( c4 O6 G
  \1 _5 P% Y; O+ q6 J- @  n
        ActionGroupDemo(Zone aZone) {! [" B5 {4 u2 ~! U5 j6 B
                super(aZone);
7 d' M- F4 O5 _8 U# X; Q6 X                list = new ListImpl(aZone);
8 `+ g; V" ?& w# s. N+ _                swarmSetp();
" f0 E6 ~8 Q. y' t8 ~                actionGroup = new ActionGroupImpl(aZone);
# g5 G& L7 Z; f& B7 J                schedule = new ScheduleImpl(aZone);# X8 \* I) N4 o0 O
                try {
) ]! i# `0 m! ~/ S+ n                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
4 _% h# |- }9 V                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% q6 K3 M- y1 {, J3 T8 S                        & ~* B2 P$ t3 g9 b
                        actionGroup.createActionForEach$message(list, agentSel);* v5 J. `4 L  F. f- T8 A
                        actionGroup.createActionTo$message(this, swarmSel);) h/ }, @' @6 h1 _( i
                        schedule.at$createAction(0, actionGroup);
$ d- P, ~6 z7 M- H) s' b, o                        schedule.at$createAction(1, actionGroup);
) t. y7 d4 E* R8 r+ ?                        schedule.at$createAction(2, actionGroup);( x$ m- g; I9 D) ?

4 K5 P- V9 u- ?" [                } catch (Exception e) {- Q; l) z$ Q, x" ^: a
                        e.printStackTrace(System.err);
8 u( q5 A* l: D, m1 Y                        //System.out.println(e);
' q2 G  u  U( b8 N# Y+ n& A                        System.exit(1);* w4 z  L* }! j7 v( ~9 z0 ~
                }
% ]$ N. }* z9 j( T3 @" M% n$ U' A. d' S

8 |1 t" v6 @) v7 k' M  [% _        }; b8 o! d& C/ m

& O6 g, |# q  r& B9 G; Z        private void swarmSetp() {$ k) x  O' a5 s6 l1 `' z
                list.addLast(new Agent(Id));
# T- J( s% X. Y% f& Y                Id++;! C, W- G" u+ u4 ]8 |  ~0 G
        }
: L# o" k3 p) x5 k& X3 ^, N  x6 \" y" e6 Z8 c) r' F
        public Activity activateIn(Swarm context) {  c5 S( v: l2 V$ U" K
                super.activateIn(context);
& }$ [3 {- N7 i% f7 z/ l4 [                schedule.activateIn(this);) b) _" _, _3 N1 e; B
                return getActivity();+ [6 R( G& k. C
        }
( F3 t* z4 o# }  g. _/ h. \3 i3 R- X
        public static void main(String[] args) {
/ d) R) v% |' ]                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
- O( a& s" {2 v7 R                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
& y( j  X8 }! c) U- k- _                swarms.buildObjects();
" I1 `- I  o; ^                swarms.buildActions();  P3 P1 k4 F* A, L6 V7 r
                swarms.activateIn(null).run();
3 k  [+ Q/ E! q" U        }
& {3 y# E: j. F) W. B
; |, p9 i9 g' P# y9 n% C" S}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-1-26 15:22 , Processed in 0.015955 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表