设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13341|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! p$ [5 T' V9 O  G1 _

, W1 Y% f# G1 v/ r, n( a本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update214 ]7 r1 C2 z6 y3 Z( W  B1 O
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 i& |7 w5 e# x' l3 O' r& A, ?
swarm.SignatureNotFoundException
" U, M9 n7 Y: F3 ]$ w        at swarm.Selector.<init>(Selector.java:76)) C1 ~! ~/ [# b* b
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
4 J4 {& P( o* ~4 n/ T5 E6 O/ R        at ActionGroupDemo.main(ActionGroupDemo.java:67)$ G- V. c0 ^& x  e
0 ?+ _3 ?" ~( r5 ~2 _- D+ N

2 F: H% y" {5 |import swarm.objectbase.SwarmImpl;+ D4 w% [1 X! ^6 C) a
import swarm.objectbase.Swarm;' ^1 X7 f4 T+ l  r, o6 |
import swarm.activity.ScheduleImpl;/ l1 z7 S" a$ i% f$ D3 Q6 Q
import swarm.activity.Activity;
( z" [* B- _3 p8 x6 }  Pimport swarm.activity.ActionGroupImpl;
: V* {8 ~( k& W- Z: o+ Y, Y: eimport swarm.collections.ListImpl;) M. }; W' ?/ x# a
import swarm.defobj.Zone; & B3 r7 u& L7 i& g' v% T2 ^' I
import swarm.Globals;5 ^9 e: ^8 y2 @9 o9 I9 T9 O
import swarm.Selector;
5 Z9 s5 R: U: ^( h$ n( ?7 Mimport swarm.activity.ActionGroup; 0 k" F  O% F' q9 G# k/ n% P
class Agent {& _7 @. K6 T9 ~9 p7 ?
        char id;7 _# g" l, S5 T# T/ N# Q/ t

: E0 U  G6 l0 A. m. q        Agent(char id) {
% A" V1 Q' _* Y                this.id = id;
; A& u* v0 M+ r        }
7 ]5 n- r5 E6 O4 U3 C$ l+ \8 P) K! I
        public void agentStep() {* s, M% h9 b6 G  F
                System.out.println(id + ":" + Globals.env.getCurrentTime());, L- z$ e6 k6 j- ^* ]
        }8 m0 n: t2 `3 Z; _
}
$ K; k$ O: f, p1 B6 e  S5 i* P6 \) P$ q8 Q" b
public class ActionGroupDemo extends SwarmImpl {
2 f4 l/ R4 _( j* O        ScheduleImpl schedule;
9 ]/ S$ U' i: _. K- `5 h        ActionGroupImpl actionGroup;
4 }* w* {# [- z2 N        ListImpl list;
! `5 _$ |$ P5 x4 R( q' x$ |        char Id = 'a';! ^- x: }; N6 B0 Q; F0 Z) J3 C9 t

+ D: w; j- x5 L, a        ActionGroupDemo(Zone aZone) {
# W6 E' O3 T" Q0 U( D0 Q                super(aZone);4 I/ U* |" G/ I5 C, B
                list = new ListImpl(aZone);2 R( H! c# J4 p
                swarmSetp();& R' Y& |6 a$ q  A) k1 \- f6 [
                actionGroup = new ActionGroupImpl(aZone);
% N, |( V2 `# {  w. T; \1 ?                schedule = new ScheduleImpl(aZone);
3 [, U. V) N" H& C                try {
" o/ ^* o% O1 P$ l) S$ ?; `                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
5 }9 f5 X+ u* T$ Y- f                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行" l/ ]. X5 n) t
                        
1 y2 c3 u. L% N, T* Z, M/ B9 L                        actionGroup.createActionForEach$message(list, agentSel);8 z7 l# D5 [) S
                        actionGroup.createActionTo$message(this, swarmSel);6 ~. a: q; E, @* e( b! E) y8 `8 g% C
                        schedule.at$createAction(0, actionGroup);/ ~7 ^' I/ n# }! n, p
                        schedule.at$createAction(1, actionGroup);& G7 F9 A+ ~0 A0 u
                        schedule.at$createAction(2, actionGroup);, ^2 B! I! Z/ ]( n& [' R

. g0 v) u& i! d6 Q9 D4 T                } catch (Exception e) {9 Q  }- O# q  e$ `/ F7 E- ^9 n
                        e.printStackTrace(System.err);
+ ~  G: D9 ^9 I                        //System.out.println(e);
0 G" p# G) U* M7 H                        System.exit(1);
6 P( M3 k0 b, l1 c9 W                }
4 k) R1 k7 h( L, [2 o0 n) p
0 \/ {( u0 F0 r, |! a! ^* I- I8 Q( I( k; ^! u( u
        }
) p2 K; U% d, t, m* {* }$ Y( J/ i
        private void swarmSetp() {/ W' p0 W3 e# F: F- Y- L
                list.addLast(new Agent(Id));1 k( m! m6 U0 \+ ?5 ~
                Id++;2 w! O1 |0 o7 a; f3 \) g  J
        }* b  b( i1 ~3 Q8 q6 h0 A
) P' x* j7 Q! f, _1 E$ Y
        public Activity activateIn(Swarm context) {$ @6 \! p5 u, Q+ g4 `' E6 s
                super.activateIn(context);
4 [* L/ S" L: d* q" Z2 }, x                schedule.activateIn(this);
- v0 Z  E. [) s/ a2 `- Q3 S" {                return getActivity();0 E0 Y+ F' ^3 E! Y
        }9 }1 l6 P/ y1 h; ?4 f+ U/ m' a( R* M

( x4 o+ n% u$ p2 R9 k' Z        public static void main(String[] args) {
" m, A8 v  W# r9 t                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
! x* x$ f! h: s( g! v                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
6 y0 p0 J  M# L! e% e7 b( }$ F6 E( p                swarms.buildObjects();
1 w$ P; Z3 S. k" M* Z3 l. ]9 x                swarms.buildActions();
$ T. K5 v. g; P' j6 ^5 B$ Q" M, b7 i                swarms.activateIn(null).run();
1 R$ E% H) S. j/ v( _# U        }
* g/ z- T6 ?8 U$ V% z0 g  f3 V" m9 I+ U( P
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-4 08:22 , Processed in 0.014582 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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