设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10671|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑   I& C' X# x% w5 o7 _

& q, c" V) g7 t4 m6 e- w$ i+ x本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ i8 [8 t8 D3 s( e
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 S; @8 k* _$ c' h
swarm.SignatureNotFoundException: r5 o3 a& U/ r4 J" U4 c6 \
        at swarm.Selector.<init>(Selector.java:76)% w, r+ e. ]. W# c+ G4 k
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)" A4 Y. [1 G0 H! @- q! ?' `6 _; @# c( }
        at ActionGroupDemo.main(ActionGroupDemo.java:67). J# z1 i) `' R6 A
2 b4 P8 f% j, w) b& a/ Q0 {# N
: l/ Q8 o* O8 O# S' }( c6 _2 q0 v
import swarm.objectbase.SwarmImpl;. m2 ^. x7 _5 k0 ~. T$ f
import swarm.objectbase.Swarm;
0 G7 n7 g, [' y; T8 |6 ^2 t# x6 F6 yimport swarm.activity.ScheduleImpl;- X- F6 s) F9 |+ s9 v4 p# b; D; F
import swarm.activity.Activity;
5 b3 k) M* R/ iimport swarm.activity.ActionGroupImpl;
* z1 {( `) N. M& F: l. i" Wimport swarm.collections.ListImpl;
7 V% s$ y; L9 f  T" {, nimport swarm.defobj.Zone;
; k: k1 j. Z9 o5 e% }% \! \import swarm.Globals;% q9 `- n1 G5 W4 A3 j
import swarm.Selector;* r% W. j( \* ^, r
import swarm.activity.ActionGroup;
% [8 V# |* m$ W# ^3 ?: {class Agent {
& p, R' ~* e9 j' }1 J! ^        char id;, m* `  J/ x2 A2 Y4 h4 m
$ k2 l) i7 W7 y8 y1 Z
        Agent(char id) {3 q* w, ]& D( D$ s4 ~" z
                this.id = id;
2 n& q" X: v$ a; [        }' }& y0 K5 J& c6 M" N
1 W) e( M) ?- H) g# \5 g9 k0 E8 L
        public void agentStep() {
+ Q3 O: x7 B5 q+ T% b                System.out.println(id + ":" + Globals.env.getCurrentTime());# ?) ]- t) p3 r/ S
        }
' M: |! U3 f/ L) N* d. N}
0 }1 \3 i2 i2 e: b& t# L
: y0 Q! ?  N) lpublic class ActionGroupDemo extends SwarmImpl {/ G$ o: ]2 F: r1 K! Q$ s0 ?
        ScheduleImpl schedule;
% P( i- ^* E* W        ActionGroupImpl actionGroup;+ s! B1 X- h; S. B( v
        ListImpl list;
8 C! s2 V: T6 C/ k        char Id = 'a';
* l/ C1 _% f" M+ F6 d+ F+ u' y8 g
        ActionGroupDemo(Zone aZone) {* y- h2 |- R; q; c
                super(aZone);% A; \' U0 T. D% h
                list = new ListImpl(aZone);# d/ z" G3 g( B
                swarmSetp();
- c* h  e  r- j; f0 ^' b$ o# q# g                actionGroup = new ActionGroupImpl(aZone);
' `. c5 H- m* Z0 t0 m                schedule = new ScheduleImpl(aZone);' w0 k" [, @2 Q* ^& p: o
                try {6 |- ~' Q' K% X9 R8 y/ Z( z/ i1 s
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);7 N% d6 e) A$ O8 n3 S* D2 L
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% t" \2 l& [( w9 a) n" g" G: N
                        
, s8 T, j: X: Z  f) b3 Z                        actionGroup.createActionForEach$message(list, agentSel);
+ o- @. a/ }9 J+ ?1 n( G                        actionGroup.createActionTo$message(this, swarmSel);: \2 h" u* j5 M6 B
                        schedule.at$createAction(0, actionGroup);
9 Q$ @1 B+ x+ J9 \( T                        schedule.at$createAction(1, actionGroup);3 H6 W0 Z9 f) p
                        schedule.at$createAction(2, actionGroup);% i: f9 l* M8 j. D
: }' k( B# b4 A5 V+ L. [' m
                } catch (Exception e) {8 q& x0 f: E; f( u! d8 }$ e
                        e.printStackTrace(System.err);
  f  U$ U: o( b0 I# N9 t0 }                        //System.out.println(e);
7 ^/ B& ?6 X% [6 B                        System.exit(1);
" T+ V: M" n- c# y3 f/ r$ y                }) p+ Y7 n% i& n: o

& D' Y; \5 ~1 _" p) b* j
) }! T1 g7 C# g% e        }
" T6 ^1 y, F# l1 }
  j/ C" F/ W% c' \        private void swarmSetp() {( l3 A% i& v% S4 o; a
                list.addLast(new Agent(Id));
, w; h. {' W- f; [                Id++;
# U6 y7 b" F( Q# x        }
& a( L! }7 B  ]2 q0 I# }- a1 c# t9 @( R
        public Activity activateIn(Swarm context) {
! i  ^& @( I4 K! N$ Y                super.activateIn(context);
' o& S: Y: f# y' {3 ?                schedule.activateIn(this);6 B+ W: ?' m3 o: {
                return getActivity();3 s- Y8 X+ p* L$ w" g3 [' ^  h8 y
        }( l7 _  e1 p0 x6 z
0 F) |3 g& j% W9 O" H  ]4 s
        public static void main(String[] args) {5 E2 d8 ^/ ~) A2 L! d
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
+ s3 \6 S$ A9 ~4 ]1 I/ B                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* W" j* X+ X7 R) `2 }
                swarms.buildObjects();" N- \- U# X! T9 w/ E
                swarms.buildActions();6 j- G# Z) V3 t, f7 H
                swarms.activateIn(null).run();' A5 n) t' G' F
        }
6 v0 v! A$ u3 Z* d1 I
- t3 Z: ?" E9 H( o6 }}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-20 05:42 , Processed in 0.012916 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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