设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4900|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
8 W& w6 C% |& {2 u8 c% g5 x4 z1 n2 i. E- J. o& l, ~' j7 F
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21: E( `" `+ Z) e7 V: Z; `- @
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* C) [1 v1 b; g  t' L; N
swarm.SignatureNotFoundException
" l5 [1 h/ M/ p        at swarm.Selector.<init>(Selector.java:76), H7 \3 i  L& R& L+ l6 z  T3 P* L* u
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; `$ E: e' J- [- r/ T3 q0 K3 u        at ActionGroupDemo.main(ActionGroupDemo.java:67)
# }$ }+ s/ c. Q! c
+ c: C/ E# r, G& o5 M# e: t: [% D+ o5 j
import swarm.objectbase.SwarmImpl;& v; C; A7 @( n/ w4 O
import swarm.objectbase.Swarm;
' M2 y" f. g( A4 k! |9 Iimport swarm.activity.ScheduleImpl;
# [, ]) J6 r  F6 ^  ^import swarm.activity.Activity;! P( [, b! ]# |6 A! ~" c
import swarm.activity.ActionGroupImpl;. O& y7 y& a% {2 L! P
import swarm.collections.ListImpl;* C" O4 r* e; b4 L. M2 Z! V+ \8 E
import swarm.defobj.Zone;
: N  k; T9 t6 Uimport swarm.Globals;
( Z+ g$ k& R6 _. Dimport swarm.Selector;' g7 E+ O3 N% x. D" x3 M: A6 N2 l
import swarm.activity.ActionGroup; * L, Y8 U: J; v- K9 ^8 e' k
class Agent {
+ Z1 s* M0 H9 e# Q' |1 J- W3 F2 h        char id;3 G2 [; Z+ A# d" `. |! B% ~

$ ]: ?( O7 o% n* T  d: c0 ]! Q        Agent(char id) {
5 z1 \. l& Z  k% N; s                this.id = id;
% V' v' O3 R2 c        }. T4 A0 G8 _4 A. \: j/ O
- C3 o! g. u# W
        public void agentStep() {
' B6 {3 E- _+ ~$ T# a+ z                System.out.println(id + ":" + Globals.env.getCurrentTime());5 p6 t. b. |9 S* f' d( Y7 j# n3 D
        }+ E4 k: B) ~) O6 [
}
0 x2 q$ R9 i" o5 i9 t8 i/ Z. r/ r  N3 M8 r+ y! z
public class ActionGroupDemo extends SwarmImpl {; G4 k. H5 c$ H. P/ \  C% V9 u$ e& R
        ScheduleImpl schedule;
7 H; g( S4 ?+ y' o! `$ L3 X) p# G& g5 C        ActionGroupImpl actionGroup;" c7 p' h  F# J6 @  y1 B
        ListImpl list;& W% d3 g  _6 O7 A: h; ~' Q
        char Id = 'a';
' |; j' x( [( I3 s( x, G+ b, Q
* x( I6 i2 A3 Y/ Z# X& u! I        ActionGroupDemo(Zone aZone) {* ~  Z0 J, I% S) O: m
                super(aZone);0 M' H' R) i5 l: v6 H
                list = new ListImpl(aZone);
0 u+ F$ Z# E$ `! j1 M: w# P4 O                swarmSetp();$ a. `% Z% T3 \( c
                actionGroup = new ActionGroupImpl(aZone);; r* f  q) ^$ A( U( s" ~1 u  U/ r
                schedule = new ScheduleImpl(aZone);
# Y' m5 h' h- w- \4 s7 Q( ]                try {. T% t; f. I3 `8 x! g
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
) r) E$ n- m, A6 m  }; B: p8 P2 @                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行( X# ~, v5 J& e  k
                        1 @+ ~2 e( n- G/ X! Y  e# z
                        actionGroup.createActionForEach$message(list, agentSel);  z2 N3 K/ J, p; ^) N2 n, ]) Z5 f
                        actionGroup.createActionTo$message(this, swarmSel);( s" p9 p' w0 K
                        schedule.at$createAction(0, actionGroup);
) O' L+ z2 N9 L+ Q. D                        schedule.at$createAction(1, actionGroup);* w. ?  s3 ?, |8 O0 A* H# I0 N# c
                        schedule.at$createAction(2, actionGroup);- x* V! }5 U! k/ M) L

6 y5 y; k" p3 L9 z! Q' E3 G                } catch (Exception e) {1 s5 r; K7 r! {1 t& m3 R+ v
                        e.printStackTrace(System.err);" w* b* p8 b2 k3 \( v5 M, H6 M
                        //System.out.println(e);: o6 R  u) h$ K8 ~/ H4 q
                        System.exit(1);
# R/ E. R; t$ z2 D9 w, D                }! P9 R) p% T: ]* R( w6 I

+ S9 |" l7 i8 z* x1 l/ r) i; ~5 D5 ?
        }9 K* ]/ h0 G  g+ N+ a# T

3 }) @+ r3 ^7 s8 A7 B        private void swarmSetp() {' _8 r1 g3 F0 {( |$ r; b
                list.addLast(new Agent(Id));' n" ^' V0 \" r( p
                Id++;, ~8 Y+ o* Q8 N" n# V) W! u
        }7 i  [' A+ p4 J1 z0 G
6 _: b9 e' |% Z  J& u
        public Activity activateIn(Swarm context) {
* D# e2 K0 U; t. ?' g4 E; A3 w                super.activateIn(context);
* b' L; d6 Y$ M5 I/ A, d6 F1 o                schedule.activateIn(this);
: q$ ~0 ^4 s' a- O7 ]                return getActivity();5 _1 n& A7 t' i4 W) W
        }& l: }+ L$ [4 E8 |! ^7 G+ u

, x2 H3 ~, H0 F1 P        public static void main(String[] args) {
7 g$ [7 o, y& t' M$ R                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
1 ^" R, D& T& u* {                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);$ Y2 a% g+ |4 j  o7 S
                swarms.buildObjects();5 }8 l+ B- m0 Q+ |) ~
                swarms.buildActions();; a1 B4 G9 H" ?* D( g6 {
                swarms.activateIn(null).run();! d9 d$ E& U) N; k
        }
0 {& Z2 l6 N  A4 S7 T' H  R
* J' p% _7 u4 K) r- R}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-16 14:02 , Processed in 0.020092 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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