设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10302|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
( x# j0 Q# H1 X5 j' O' G5 }4 x8 y% u2 r' _* v
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% ]! o. J* ~0 _5 b! ~
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
/ B2 }% X/ {8 B( U8 Z% }swarm.SignatureNotFoundException7 {' `! v( _) w& c, k
        at swarm.Selector.<init>(Selector.java:76)
5 `* ^/ c0 O6 [        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
) e; ]# O* [0 y' ^+ R        at ActionGroupDemo.main(ActionGroupDemo.java:67)% L# `: W) n. G8 e3 W0 u, E. k0 f

0 [  D: w7 h$ E3 f- {) y7 ~; z( a4 v6 |5 N9 M7 J: S4 Y* d7 W6 A
import swarm.objectbase.SwarmImpl;
* \" j' J+ I( f$ I' d9 V4 G( qimport swarm.objectbase.Swarm;8 W& @3 }  Y( X
import swarm.activity.ScheduleImpl;0 G9 r! J; K$ i& ]. ^# W6 g
import swarm.activity.Activity;
8 b6 ~* i# Y8 E3 q4 B! q( qimport swarm.activity.ActionGroupImpl;
# {9 D1 |- w% L: D8 a2 Cimport swarm.collections.ListImpl;4 G% s9 J1 }; Q
import swarm.defobj.Zone; : C4 G& {6 `0 W: ~. R
import swarm.Globals;; P1 i* y) o8 b+ J1 ]
import swarm.Selector;
2 A" g2 q8 A6 T! Kimport swarm.activity.ActionGroup;
. u5 Y% u! ^! ?1 J; ]) X- Kclass Agent {$ o4 H" [- ?4 G. S: R: p
        char id;8 c. e' ?4 m. c: v
$ ^3 }0 K# d! S6 ]: R. e3 ~2 \
        Agent(char id) {+ H9 r, y/ |: c( {4 `
                this.id = id;* g0 |# U/ Y8 @$ o8 V2 v* ^# T8 B
        }
' j' f% q6 S0 p2 S/ g* [9 g9 E# i) G4 ]1 f0 Q, i
        public void agentStep() {- }1 U* g$ m9 m  o
                System.out.println(id + ":" + Globals.env.getCurrentTime());& b' Y/ |3 k" A$ J- X
        }: d' I7 g5 m, y8 [' V; L; w- Z5 y: ]
}
/ F5 f" x; E6 \: l. O9 \( ?5 c- m, U. O
public class ActionGroupDemo extends SwarmImpl {
; X* d$ @5 @- t4 `        ScheduleImpl schedule;
  g, q% `6 Y9 ~" y4 E        ActionGroupImpl actionGroup;
1 f1 |) T0 Q* O7 n7 M* \        ListImpl list;
" z% _: }! `, F! ~5 M; N        char Id = 'a';
" e: H; r( l) H; Q' U
  G- q' i( i7 X# H: I        ActionGroupDemo(Zone aZone) {8 o+ r! P+ o- ], b* \/ p# l% E9 i
                super(aZone);' ?+ c2 j" j& B
                list = new ListImpl(aZone);) h8 i9 ~0 x; J5 L8 H  K/ R
                swarmSetp();( t9 @) R6 p8 ^  D
                actionGroup = new ActionGroupImpl(aZone);
0 P. U7 R, t2 S. M2 t/ j                schedule = new ScheduleImpl(aZone);# t) L% f! A+ m6 B/ H
                try {4 o( y+ T/ i1 k" |2 j9 \- X
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
- H9 n, k6 Z4 t" [                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行  }, H7 j& Q4 e5 B/ r; l( [
                        
6 f& E. M) z9 T! m! j                        actionGroup.createActionForEach$message(list, agentSel);
' P6 `3 i) Z. S& q! V4 f) N! a                        actionGroup.createActionTo$message(this, swarmSel);. I/ l) d$ Z! D. E$ v3 i8 B( a
                        schedule.at$createAction(0, actionGroup);: u2 v9 d, J7 m  m1 E1 q
                        schedule.at$createAction(1, actionGroup);
, x- m, Z, Y6 L                        schedule.at$createAction(2, actionGroup);
* u, e4 ^8 H5 g- A
$ p: s* L5 q8 X8 ^                } catch (Exception e) {
0 M6 ~! {. g/ L5 [. _0 `                        e.printStackTrace(System.err);
% p8 }" x. y: S  n# G                        //System.out.println(e);
4 N% p+ p/ }3 ?                        System.exit(1);
# k* _' g8 l! L' W. {0 Y8 R1 y                }
, m. O, g" K" |; I. f9 t; T6 o" Y( L5 O/ W# X7 Q

/ l3 n( v. _: E8 {7 K5 A/ Y, w        }
& }' K- v! i6 {5 ^- e0 u- ?& V; z* a6 R; ]( M  Q. j
        private void swarmSetp() {# K- j+ ]( ^; g* v" q; `0 O# ]1 ~
                list.addLast(new Agent(Id));
# y- e8 @% ^9 a0 V: @                Id++;
% a( _& M) n' W4 S# [) e4 @        }
* L$ I4 f* p# l: \, Y3 w
) |, P( B' f3 |5 d3 B1 X        public Activity activateIn(Swarm context) {
3 `0 V$ h6 g& D( E) g- u  A, X                super.activateIn(context);4 l& Q+ c; ~; Q& e, `) b7 e
                schedule.activateIn(this);
$ T! R- j3 Q) @* r$ e" Z) ^: S                return getActivity();- M0 A& P4 @$ p3 m
        }! O! c5 A- I) w* y1 a0 o9 V

& u& X- z2 K7 f* M        public static void main(String[] args) {# E. C, s1 s2 P" z9 X
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
& P  Z, Q& P8 z. b( \2 W+ g. {3 ~                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
' c9 i; r( u5 ?/ Y9 t6 g" Z# m                swarms.buildObjects();
- W' v- U. P/ H  c4 t$ D                swarms.buildActions();) E5 X5 b' o' c, W
                swarms.activateIn(null).run();
- v' r# }; G6 Z3 v+ Y# g: r9 X        }; @6 o. ^& P1 X$ n/ P& S! {+ r
, e' x8 l5 z$ T
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-10 04:14 , Processed in 0.017016 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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