设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9854|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 / ?7 P4 V+ f$ O
: y: k  E4 _) v- \
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
( U, G8 U$ x; {* Z' V$ _: P以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 ]1 z% d0 l( R7 J* f
swarm.SignatureNotFoundException
/ c; r- \' V5 x8 k        at swarm.Selector.<init>(Selector.java:76)3 n% @% I& F% J0 u7 v% i
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
9 A6 p, `0 E# \8 k( y+ C1 K        at ActionGroupDemo.main(ActionGroupDemo.java:67)
4 L# {- w, a( }9 W1 \: c- w1 [4 T3 I. @/ k. U; j

0 S0 ^  o! J& ^# ]# aimport swarm.objectbase.SwarmImpl;
! f- U' l! E/ z0 I' J0 e& _import swarm.objectbase.Swarm;: M7 v2 e, ]+ z4 a; w
import swarm.activity.ScheduleImpl;, L9 |' w' y$ S2 k. T% ?$ K
import swarm.activity.Activity;
3 l. m% \) b+ i9 I) W' f3 f. W3 `" _import swarm.activity.ActionGroupImpl;
2 y# C. i: W* v, H; Z$ o/ N5 n' Iimport swarm.collections.ListImpl;: D! Z; ~9 E8 ?- K; ]; b
import swarm.defobj.Zone; . W  o! T5 I- R' D; \
import swarm.Globals;; m! D7 x$ |3 |, Z
import swarm.Selector;7 D; R" \% p9 z/ `
import swarm.activity.ActionGroup; " O4 q' q) v! Y4 g0 p2 o: x/ U( ~
class Agent {6 j: l3 I" [- z% [9 L2 \
        char id;7 A- K1 @2 |$ V! E/ J

- _0 f" E7 h' E8 B$ L        Agent(char id) {
; E' K1 M2 G  Q, a                this.id = id;& c9 l0 c( e# s
        }1 A- k; W! r8 f2 z/ Y$ w+ K  Z

- i& G. b- p* |        public void agentStep() {
- `. Y1 N' @9 E* ^' y! k1 X5 E3 F                System.out.println(id + ":" + Globals.env.getCurrentTime());
& }0 }! I  \- T! P, O        }, K) T' o1 ~3 o# q. J; Y
}- P* o  ?6 r) y6 ]+ y3 p, f
  n: h) n1 d/ w( T, f
public class ActionGroupDemo extends SwarmImpl {
6 w  `4 V  ]2 g1 }: }" N2 b" F        ScheduleImpl schedule;
1 n: C4 n  K! I1 T5 [        ActionGroupImpl actionGroup;7 a) V! A4 W8 p7 \
        ListImpl list;( S  _+ G" e% e( F' Q
        char Id = 'a';
& [! |, M8 ^! t+ e1 N
4 e, K2 U  E& h+ `        ActionGroupDemo(Zone aZone) {
: f6 C- i) {( v8 {5 J                super(aZone);2 i" E" H' n2 Q/ T9 p; b2 Z
                list = new ListImpl(aZone);
, d# q) u$ v9 l: k: {                swarmSetp();, h' E; k, H# J$ ]9 R5 O9 U
                actionGroup = new ActionGroupImpl(aZone);
( R  o& x! d; F& ^5 g                schedule = new ScheduleImpl(aZone);
8 M; q+ h9 u3 D" u5 P                try {
1 h9 j# a) f* j: M$ n5 \                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
: O2 x; [- e8 }/ e                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行) T5 ~* L/ @4 W
                        ! [0 P* q5 ?; X& B2 D
                        actionGroup.createActionForEach$message(list, agentSel);
. V! M' u9 Z- \: ]                        actionGroup.createActionTo$message(this, swarmSel);
" i9 J" S7 v: ~9 E5 z                        schedule.at$createAction(0, actionGroup);% B8 v4 ^/ S) a% v6 Z& Q" Z# l
                        schedule.at$createAction(1, actionGroup);
$ R! Y9 W, h5 E. J                        schedule.at$createAction(2, actionGroup);
: z. w& N5 @6 ~1 `* `! c# _
% U* W8 H+ i2 J0 f                } catch (Exception e) {
+ `7 K$ P& [( N( Z                        e.printStackTrace(System.err);
# x/ Z& h9 ?, S7 z+ s) }                        //System.out.println(e);0 {1 L$ `8 c& A& m8 `, O* v
                        System.exit(1);
) }) }! }( P5 b+ B/ P9 S                }
* ]  v3 r3 I9 Q) I+ G  h
  C6 O0 J. `! v3 u0 }, z8 @+ b* w, y) Y8 V) R6 e
        }
5 ?: ]4 _; V" X, G% b3 ]9 W" ]; E+ c: L! I$ a
        private void swarmSetp() {3 R- V' ]/ O; C8 Q1 I! o
                list.addLast(new Agent(Id));
3 b+ l( l/ E5 Y7 V! ?4 Z$ `                Id++;
" ?& L" l, O0 {8 D        }' M+ J( G2 b* F9 \  f

, }5 G8 @# g3 e2 N6 X        public Activity activateIn(Swarm context) {; j. _( h5 {, B$ o
                super.activateIn(context);
5 Y1 ?! ?  E" f9 `                schedule.activateIn(this);( B' H' b( q% h5 @( @
                return getActivity();
8 i5 b; k# d' [. `: J+ j" K" S        }3 r; o$ V1 V6 O5 W

6 U+ I9 _6 ?6 [. |, |5 U, p        public static void main(String[] args) {
9 Q: e5 d6 p. O                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 ?- v% u, [( K; }
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);; G+ V- {0 g. [( w
                swarms.buildObjects();
* X* @. b8 J0 O  h$ M* d                swarms.buildActions();3 x, a& Q2 Q  k9 X2 z( U7 y7 K
                swarms.activateIn(null).run();( `7 \( J4 ~1 G3 r
        }
1 ^- _8 o- k2 C+ R. T! d! L! j1 ~% N6 T, Y/ K/ N% n
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-25 12:20 , Processed in 0.014957 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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