设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12108|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 / X: a/ m: H7 v# \& T
8 s- d' [/ C0 q) \3 _
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% }0 n4 g9 ]" d' Z
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
. M$ L1 U- a6 J7 J1 ~* v, pswarm.SignatureNotFoundException
& v# K% K3 \* |  @        at swarm.Selector.<init>(Selector.java:76)! ~* ?  k! n) @* e# r; b1 o; {% g3 l& e
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; i+ O  R& j5 v- V. i  I        at ActionGroupDemo.main(ActionGroupDemo.java:67)& l2 Y. `2 b+ m$ o
' o+ v1 f0 g2 R& b

: [' S* d, z7 h/ eimport swarm.objectbase.SwarmImpl;. e9 g( c: ^5 h
import swarm.objectbase.Swarm;
# W" z% L* H' |% @4 Yimport swarm.activity.ScheduleImpl;
# s9 a- J0 h* G% ]1 H5 Iimport swarm.activity.Activity;
0 S4 D% A2 ]4 B1 P. S" @% n0 M' nimport swarm.activity.ActionGroupImpl;/ k" e2 H, Z# ^0 `. f
import swarm.collections.ListImpl;% c" w; r4 h. A
import swarm.defobj.Zone;
8 ]! _3 y% |/ w! f1 ?) p7 mimport swarm.Globals;9 l3 y0 L! }. b* |0 M; E+ r
import swarm.Selector;+ x% B6 i, q. j, t
import swarm.activity.ActionGroup;
) t+ O- [, A; M9 ^4 i3 n7 Sclass Agent {
- i7 Q0 j& c# C, _5 a' f, ^        char id;
4 ?* e5 w2 a' H5 j
6 J( v  o$ e/ i" g        Agent(char id) {! v+ K' ^% `1 r$ [4 V) l
                this.id = id;! Z9 `, y2 x( N0 v0 e% j3 r. O
        }# \$ V- K9 _4 z' N& u- O% v  ~
+ g* ?- N' j  g/ P9 c
        public void agentStep() {0 f5 i9 G( m8 N2 g8 I" q' [% C
                System.out.println(id + ":" + Globals.env.getCurrentTime());
" J$ T4 C" h( J& I, M0 Y2 i        }
! y; D" }, R1 k4 o! R" B' T}1 i: C& E0 u. F/ p2 S- ^

* {. y% q7 n  T2 i. kpublic class ActionGroupDemo extends SwarmImpl {& z- w. A, ?. w7 U* S: u, G
        ScheduleImpl schedule;
* k) Q, ]6 ?( K. z  c        ActionGroupImpl actionGroup;  P+ U$ \; t0 m! O/ c9 h# Z" E# D
        ListImpl list;
9 ]7 K1 P  j/ {# Z( S        char Id = 'a';
; E! p3 a# Q1 D) v- W9 [  F
% v6 i$ T' R3 [        ActionGroupDemo(Zone aZone) {
1 i# E, c  _! Y                super(aZone);( y3 ?2 ~- j8 z. ?1 U" u" b9 q7 ]
                list = new ListImpl(aZone);! }2 s/ Z+ c3 `% W/ u$ Q3 X/ k
                swarmSetp();( R2 \- _1 @4 B; q' f
                actionGroup = new ActionGroupImpl(aZone);' n3 \/ _3 J! I* ?8 g- A7 R
                schedule = new ScheduleImpl(aZone);( Z2 T$ |7 b8 W3 ^
                try {+ `* R7 W+ J3 _: q- y. W
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);6 Q1 v- G2 Y% s* }
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
& [3 N7 S- t6 v! T7 O                        ) U$ T7 z/ d4 V# P
                        actionGroup.createActionForEach$message(list, agentSel);& Y2 Y) @' m( H8 I9 v& y0 e
                        actionGroup.createActionTo$message(this, swarmSel);$ V6 c) l7 w  c. o" ~% L5 W
                        schedule.at$createAction(0, actionGroup);
' {3 y) s/ q; l4 o9 I) }) Z1 x                        schedule.at$createAction(1, actionGroup);
1 D, v. j( g2 N# g0 C" w% \2 f9 h                        schedule.at$createAction(2, actionGroup);; N6 c5 @; J+ A- s: ~

; Y3 @3 m+ E! I% `- X" y- F                } catch (Exception e) {8 R: o, ]4 r; N/ y- k8 i8 H
                        e.printStackTrace(System.err);
' a' i) F9 @3 J                        //System.out.println(e);, ]) K; C% p# W$ T
                        System.exit(1);
  B$ b# T: |7 Q) B, v. S/ Z. o                }
% |$ N: F0 A1 |$ ?
. b$ P# U5 b% P. P+ y9 V4 c
$ }- S  j7 a- `/ I. j. E1 e        }6 {: ]1 ]0 h; U* {( d' S
% Z& @; O8 s, [; T( P
        private void swarmSetp() {
0 h2 T$ B) c* k) l, H                list.addLast(new Agent(Id));- W, f9 L0 t% i7 _# H- T7 Z9 F
                Id++;
) ~- e( R1 C/ Z, ^% U        }
) d. O* M& i8 M' j# ^, L2 \3 ~1 z# h  y6 K& `* W
        public Activity activateIn(Swarm context) {
* _- @1 L: h, \/ k! i. S: X2 C& W0 F                super.activateIn(context);5 F9 `  _4 a, m2 W$ q$ k1 f
                schedule.activateIn(this);
: p" c: P. R) `2 ~. ~+ |' c                return getActivity();
5 P) Q9 A' I" p/ o! R% h        }
+ ^' S9 D9 H- q) G; F9 C# t3 O1 U
        public static void main(String[] args) {3 g2 z# e+ j. i0 R  I) a
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);# U; O) U& I8 Q
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
- u7 [! }; I) E) `+ r9 e# W                swarms.buildObjects();; T! [$ i" L: q' K' b$ g
                swarms.buildActions();0 A% h% w* R; n* I& D! s' {
                swarms.activateIn(null).run();( R% K" Q% ]3 M% `$ Q2 V% j& [
        }0 a6 d' n; U8 x: a( b$ w' o; W9 s; [

' N3 O  g' X- \; z}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-30 15:00 , Processed in 0.015877 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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