设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10749|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 $ b, B0 y/ p* @' i

6 y- s' }, b+ Q/ {本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
1 b6 }/ m* o2 v) K以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
( w! q1 R" h$ x. z! e, f6 S7 N$ k4 n* ]swarm.SignatureNotFoundException. L, i9 B# B9 @/ t) Z4 v
        at swarm.Selector.<init>(Selector.java:76)1 |* p0 ~7 N0 o
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)9 d3 }! l& c% ^9 A& k
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
2 T$ u  O5 _8 C" O
, F# ~( w3 D( f* w) f# U7 r! f0 `/ @% P2 g8 q
import swarm.objectbase.SwarmImpl;
- }. e, V# l: c& x8 k" Aimport swarm.objectbase.Swarm;
1 N+ D3 }+ S0 ?+ ~  B3 Vimport swarm.activity.ScheduleImpl;
0 \0 G. \$ P) b" F) O: o5 _import swarm.activity.Activity;
' t  z% t) ^: ?3 n. w6 Kimport swarm.activity.ActionGroupImpl;7 G: L: ^9 e5 K( c: ?" g$ ~1 U& W
import swarm.collections.ListImpl;% x, r0 j4 M- N) V1 p8 z
import swarm.defobj.Zone;
8 k7 A% R4 z# t3 z7 ?* g0 f  V, p* ?import swarm.Globals;0 `" T; }8 K2 B
import swarm.Selector;6 ?1 [& x% J2 k* t8 {6 n' i
import swarm.activity.ActionGroup;
. t$ B7 N& x5 dclass Agent {
  G* {6 A% ~9 d* c9 R! [& L        char id;$ k% f. `. h8 D5 D' j1 K( x/ b

( h0 I4 o$ j; H! R( v: K        Agent(char id) {
! E4 H4 r8 J* i! [: [7 G- b                this.id = id;
, D& o; w9 k# m        }$ O2 ^7 V+ _! |2 a

/ i) a" Q5 Q0 n; {4 |        public void agentStep() {' \  r- W6 q& y! [8 |; `
                System.out.println(id + ":" + Globals.env.getCurrentTime());
. V/ I: [& x) ]/ w        }. W$ N/ @  ]2 S# R: H; L2 Y' D
}
) ]( E  x4 P; H: _0 c3 m1 K; `/ _2 Z7 H: G
public class ActionGroupDemo extends SwarmImpl {
9 U) y! p( k5 [0 e        ScheduleImpl schedule;
& O8 x. J0 L# `' b. g4 K2 Y        ActionGroupImpl actionGroup;
7 H# v5 K4 {3 V* M        ListImpl list;3 k" {. |: J7 ~# `  J0 y$ O
        char Id = 'a';. x! t& m) \! Z6 t

$ u3 J) t5 |/ ^+ n. ?. o        ActionGroupDemo(Zone aZone) {
7 t, m7 u. c6 k: h  L                super(aZone);
1 ]/ j, _! R! r) |" ]3 e3 Z                list = new ListImpl(aZone);
* h5 n) L& K: A2 G. z8 u                swarmSetp();
/ ]8 {- X! p/ F- P: {% N                actionGroup = new ActionGroupImpl(aZone);4 o3 E6 h0 q1 {' a+ k4 n
                schedule = new ScheduleImpl(aZone);
% E. P$ h0 m* H7 I1 Q  j                try {6 b1 L+ Q' F( }5 M; R" a
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);9 }3 y, _/ @1 S
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行: X  T. t" S  k" p! W/ i% Z
                          k9 a% ?, Z- I; x4 u( N8 u
                        actionGroup.createActionForEach$message(list, agentSel);
/ Z# M6 `( i* X, [, t5 g                        actionGroup.createActionTo$message(this, swarmSel);
2 H$ S5 N$ i' F, V                        schedule.at$createAction(0, actionGroup);
4 p1 B' H8 J" u$ t6 e9 F                        schedule.at$createAction(1, actionGroup);: P0 s2 I9 `8 ^1 m) J1 ~: T
                        schedule.at$createAction(2, actionGroup);/ ]9 L# ^5 [2 G' y4 }, o
$ ]" ^4 V6 G& d, ]
                } catch (Exception e) {
* X$ N. c& ^8 \# j                        e.printStackTrace(System.err);
2 Y3 g& V' V5 s; k                        //System.out.println(e);
. G1 k/ D) M2 `; X                        System.exit(1);: s, J% G! z( L  h' e( W
                }
4 b2 |* I6 u, O' m# Y6 v
$ m! k8 f- H! }& [+ W
; {) b6 \5 |, r+ Y8 ]% w9 M        }
# L, [: w- e: P0 M% o9 ?% R" w* T3 y; Y$ Y
        private void swarmSetp() {5 z$ L$ V% a& x3 a) d
                list.addLast(new Agent(Id));! B6 A6 x2 N* {8 P+ G7 O4 v
                Id++;7 x4 E# F, J0 A. z1 U
        }* I* }- b, p, Y' W+ h; }/ Q
9 n7 O. ~  I; ~+ b4 d
        public Activity activateIn(Swarm context) {
' R& F: e" T& R, Y+ t6 k$ j                super.activateIn(context);0 y% S* i# K$ R4 i' T) z
                schedule.activateIn(this);  G0 a. A+ h% j( ]2 c0 w; W. U
                return getActivity();
% i; F  m* o1 M+ K* c: O7 O        }' a7 ~- d+ _' `5 p

% L+ o, ]# R1 ~! b% O' K  ^& Q5 a        public static void main(String[] args) {  i0 }* f% y% T' w& I) e( L
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
, J3 \6 v! ^& Q1 v: c                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);$ p7 S- }7 k9 l% `, v: S: ], Z
                swarms.buildObjects();
$ s% A* k5 B. P$ k% j; F                swarms.buildActions();
$ x' L0 u" {9 a  C                swarms.activateIn(null).run();
/ I. T/ B0 t4 ^# c( g& y        }  z! T7 I2 w2 R- Y

, u* S' f, |2 U}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-22 13:32 , Processed in 0.016013 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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