设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7879|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
( f: w7 w. I3 p$ Y/ R" i' V9 x) o/ M4 Y5 I  I
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update215 A* Z* p' |! G7 }0 C1 G: K
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.  X& v$ p6 W" n
swarm.SignatureNotFoundException
# V" ^* _% i8 Q7 V- L4 r$ }1 D6 d        at swarm.Selector.<init>(Selector.java:76), p8 D+ @+ t/ M/ D
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
3 B% b0 p+ f& e4 I7 t        at ActionGroupDemo.main(ActionGroupDemo.java:67)" G+ S* J1 H! Z; f

  w9 S- q: L# u/ ^6 V3 l0 }  l! q5 N) z) j% I
import swarm.objectbase.SwarmImpl;- s+ P' `3 p7 x4 B/ M
import swarm.objectbase.Swarm;# ?* C5 a' n# }" d1 q
import swarm.activity.ScheduleImpl;; D" o* O3 k; Q6 X% v/ ]
import swarm.activity.Activity;
# r4 h6 O' a; ?0 O# simport swarm.activity.ActionGroupImpl;
7 V3 h' y% a& [" E' Simport swarm.collections.ListImpl;
, ]1 |# l  S1 W* b' D# Y% Y" mimport swarm.defobj.Zone;
2 y! c% ?0 E1 I8 R4 Nimport swarm.Globals;  _- i3 i6 n$ @8 S+ y. i7 k
import swarm.Selector;1 g% I7 R# Z3 o" ^
import swarm.activity.ActionGroup; - ~, l& s7 u" w' y* Q! s4 C1 B
class Agent {, M% a. q. F" B( [. o
        char id;
6 J7 E% I1 }  d" w: R
1 s3 B. I* O4 @; a7 m        Agent(char id) {
7 V' ]' P  M# ]" K" v; R                this.id = id;6 I4 V  x$ c( l7 c( a% I$ ~9 Z
        }
9 E( X" q! ~8 L. N& K9 z
' c# L  t& }4 u. a  n( E9 K        public void agentStep() {
0 C& r# s& W0 E                System.out.println(id + ":" + Globals.env.getCurrentTime());
* B7 {/ U% p% G/ J) o' R        }
% g" A& \: o; w, ?$ q}; E3 {) |3 w7 D  w0 ~$ A0 a5 i

  g: f) w, P3 [3 G3 Opublic class ActionGroupDemo extends SwarmImpl {
3 _  O0 v8 ]% [2 \  K, B, ?        ScheduleImpl schedule;, ?$ A$ Q. ^" E, R" o
        ActionGroupImpl actionGroup;- C* ~- w" B- @2 G1 @8 w* {! ]. \
        ListImpl list;
: }( j% y7 l' d( I& {        char Id = 'a';4 G3 m% T5 ~! v! B" W, |
6 W. s% V+ S7 e1 |" J; n3 \3 p- Z
        ActionGroupDemo(Zone aZone) {
4 v2 N. D* }7 @9 O( k! I                super(aZone);$ o2 H8 V% K! _
                list = new ListImpl(aZone);
! u, x' P2 `. U                swarmSetp();2 B! E. e/ n& ^0 K- ^+ [% q3 ^, ]
                actionGroup = new ActionGroupImpl(aZone);$ u7 f! u7 i+ k- h5 a
                schedule = new ScheduleImpl(aZone);
" G! F8 s( {9 m' R                try {
" z2 @. C$ \$ N( F$ q; Q                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
0 Q( a( X; s' Z                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行+ ~7 z9 d) w, f* _
                        
8 Z1 J. S3 m# a                        actionGroup.createActionForEach$message(list, agentSel);
2 Y+ C; R) a6 X2 }, [! t                        actionGroup.createActionTo$message(this, swarmSel);' d$ p5 e' t6 s9 _  V: w1 ]
                        schedule.at$createAction(0, actionGroup);
# A( f. U7 z. P9 d                        schedule.at$createAction(1, actionGroup);
% j5 w  S# r  \9 g0 Y                        schedule.at$createAction(2, actionGroup);
7 U2 j7 o: ^. D5 H$ ?
1 S. ^5 T& V( M* {* A3 l                } catch (Exception e) {1 R! C' f$ H, {7 N' b$ f  G
                        e.printStackTrace(System.err);
3 L8 l& B+ u" m+ u                        //System.out.println(e);
- I7 D) [# f: r0 F# E5 h% r                        System.exit(1);
; F; a$ C4 \+ m8 {( Z. i% o, |9 H1 _                }' C3 {; K, j5 @4 f; q
: q4 D( l3 T  ^: f+ I
5 N8 O8 T3 o) ]& e$ E" c
        }
! y2 G4 |6 o# S/ T" v' _9 q# s' h( K0 u4 w; I+ g1 z; V! ?
        private void swarmSetp() {
# o5 X% _  S2 v* ]5 e8 p                list.addLast(new Agent(Id));
7 B/ R$ m' C, d                Id++;, g8 K( X% M* [* D  _( z9 K$ J
        }
4 _  E6 e. r, B2 x& V9 x
: [; x1 F* s1 V& T9 Z        public Activity activateIn(Swarm context) {
* j4 {! A+ q) U3 D                super.activateIn(context);% c+ g& a; G! f8 Y8 M+ j
                schedule.activateIn(this);! d8 P1 O1 z. c- R  P" {
                return getActivity();
, {* G+ S, B: I) D+ k8 M4 e4 A        }
% x1 X4 S3 i- @% k. ?9 r: |% Y7 D# U5 L3 Q) j. f! s5 ]; n
        public static void main(String[] args) {
+ ]# [8 ~1 J+ |                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 a- _7 W$ |6 z' }                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);3 E& H( k/ P6 t% w' m4 e! _' V0 {
                swarms.buildObjects();5 \, J& X. j2 Y: e6 _$ w% C& R
                swarms.buildActions();2 x& W, ]. v# ?7 n; \* m- C/ x
                swarms.activateIn(null).run();- B  |& _- ?8 I$ _/ y
        }( b& }5 l( Y1 g& L1 g5 C/ |
8 ^8 I' F1 z) N& c
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-19 12:13 , Processed in 0.014776 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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