设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10416|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % i$ U* S0 M, _! ~8 v
, P; z# v" {& N* K
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
- f: ~' T& ^% ~$ r以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.; x' G0 C6 n" R$ l: d
swarm.SignatureNotFoundException
8 k) X& Q9 }) R# ^$ G# S9 w        at swarm.Selector.<init>(Selector.java:76)
. V7 F. a1 t8 z, U        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)$ o# v$ `* G) o6 ^# S* F
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
- s, n, A2 |0 Q+ s( e
4 r" p  [3 x$ h7 \/ y0 a) t* R3 X- U# z5 J9 u7 g/ b$ E
import swarm.objectbase.SwarmImpl;
( V. R, p$ [( C3 c& h- ]import swarm.objectbase.Swarm;
. t5 w- v  z& Vimport swarm.activity.ScheduleImpl;  w: G3 H$ y( s! t
import swarm.activity.Activity;
, r) s' ]( r# C4 g& J# ?& y9 himport swarm.activity.ActionGroupImpl;
! J; [2 y" v  Nimport swarm.collections.ListImpl;
+ r( o6 c# i7 z# A0 cimport swarm.defobj.Zone;
; G! |7 `0 X5 ?! ]* R/ H, X% }' Aimport swarm.Globals;
8 r  N; L9 N  z- G; t% n) s6 uimport swarm.Selector;
8 C  K  C/ S: T; nimport swarm.activity.ActionGroup;
$ T6 L8 u' l( R8 y0 m7 Uclass Agent {
" N9 p8 ~9 I4 d; A+ z3 r        char id;; @( c4 p4 O# i/ V

/ j/ W2 J, |! G! [( O        Agent(char id) {2 I3 f. n5 a, _6 N5 {( x
                this.id = id;
4 w8 U; U- A; x- G        }7 R4 U5 J' i% [7 U, z+ V

$ s9 x( {9 T- H3 Y        public void agentStep() {% V3 `6 r, \7 n8 K9 C5 ^
                System.out.println(id + ":" + Globals.env.getCurrentTime());
# M; Q: l4 Q1 r9 ]- P        }, d8 Q3 {0 F( P  v
}
9 O- v9 w/ m, f7 @. b8 I( C9 B# O
0 Y+ d# @% _+ D5 B$ O. l. lpublic class ActionGroupDemo extends SwarmImpl {; _# S1 z* M* x, s" |" m) ~
        ScheduleImpl schedule;
! S" p( d9 c, V# m- T3 s+ L) _        ActionGroupImpl actionGroup;2 c5 p! z) [6 {  F- {! x5 s+ d
        ListImpl list;
. O; v0 W5 b0 n        char Id = 'a';- ^) J0 r# v2 A# \3 n5 m

+ b0 W6 Y8 l) X9 Q7 H. F8 g        ActionGroupDemo(Zone aZone) {5 R# @' m# k3 J9 N7 d, }6 a
                super(aZone);
6 d1 Z* c$ @0 f2 C+ ~                list = new ListImpl(aZone);
/ @2 z5 v5 y3 k& c, c) H                swarmSetp();! L( ]2 F" q- f3 J
                actionGroup = new ActionGroupImpl(aZone);; }: B, _. A- u: N5 v4 I6 ]
                schedule = new ScheduleImpl(aZone);+ L& \; k% i, ?  E9 N. H% Y# z9 h
                try {
; ?2 t* G! P9 z' x                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
( r/ r6 n. c" M$ [2 L                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行$ b2 ]" D$ G& }- F
                        
- C, J' n6 h$ l% T6 Q                        actionGroup.createActionForEach$message(list, agentSel);
! R4 @7 M, i% z4 P6 d                        actionGroup.createActionTo$message(this, swarmSel);
0 a2 x: G1 E5 C8 M3 B3 a8 j                        schedule.at$createAction(0, actionGroup);6 A2 o0 F' H% J, O
                        schedule.at$createAction(1, actionGroup);
6 |7 S1 x  a+ A, n$ F                        schedule.at$createAction(2, actionGroup);' `& {; K5 z, s

% D: B7 H3 Z" m% _                } catch (Exception e) {' d5 v* n5 Z& N: `6 M) x
                        e.printStackTrace(System.err);
+ ?/ y# H/ g$ l                        //System.out.println(e);$ @  F" s8 B4 z/ @) j$ k) X
                        System.exit(1);
( {: I! n% G# r, \' i$ _                }
! L& E1 S+ x7 q/ c% {1 x
; q. g+ c/ q! ~* t$ P9 M% p
* b8 b3 Q+ q" R; L, Z- W7 w        }
" u) A4 K& u# R3 ]7 E4 @4 Y4 V( U8 I/ E
        private void swarmSetp() {1 r: ?9 q" e" c; u' p( g% {
                list.addLast(new Agent(Id));! k! l1 O4 `, U! \, d0 D+ [
                Id++;
7 m  }- ?3 p4 M2 G3 A        }5 e+ M. U& x8 c5 m$ d( `7 f3 ]
* b+ r3 z$ J: Q9 x
        public Activity activateIn(Swarm context) {
1 r3 f+ s# L! ^3 i. d1 T' e. w) q                super.activateIn(context);' s: e* o4 F6 l. W8 ?3 p: n
                schedule.activateIn(this);
& h, @$ M( U0 V2 i$ j                return getActivity();
! @4 O4 m% d7 i0 J* O0 ]        }
# u" N% A; v3 f3 R6 N" e- ~
5 B1 E+ m5 b" d& J3 e2 Z        public static void main(String[] args) {4 R' m4 v" a" n/ f
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 \  \: L4 H* i/ e2 U  b6 j
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
* N1 C+ \9 Q, o! J                swarms.buildObjects();
4 m6 r; q- G' c% B) W1 I                swarms.buildActions();' L8 q( R0 L; g
                swarms.activateIn(null).run();
& r" b% J1 M8 p, Z0 b        }
' L7 o- z7 k0 }4 |5 {# r, }7 @$ M9 C# P* D+ m
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-13 19:48 , Processed in 0.015413 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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