设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6308|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
+ |$ r4 {* v* m5 ~
# N4 ?2 N* ^2 u本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21* Y# C% @# q8 S
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 J+ t! l& }/ s5 e0 n0 |- j# p9 N
swarm.SignatureNotFoundException) f9 x8 N/ b. |, D$ y: }0 s
        at swarm.Selector.<init>(Selector.java:76)" R. e) d$ X6 m; X- K- M" l9 e/ @; ^
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)$ T6 L9 t4 h5 i+ q4 K6 J, `0 x
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
* o) I8 D; }5 u+ Q! A
$ k) _3 ~2 [1 H( O. {8 Z" y6 `. S8 ^& S1 I, S  m
import swarm.objectbase.SwarmImpl;
" |/ n# v4 m+ O1 [: G5 u3 Himport swarm.objectbase.Swarm;
, H: u" H. H9 \/ e$ Nimport swarm.activity.ScheduleImpl;
- p9 s/ E3 U& G: U  Qimport swarm.activity.Activity;  N4 v. T  W& L- u" i% ^
import swarm.activity.ActionGroupImpl;' G9 T& d2 |* W+ M
import swarm.collections.ListImpl;8 a" ]. x3 x# V/ T0 k4 J2 D
import swarm.defobj.Zone;
/ _$ A0 R$ J% mimport swarm.Globals;  o/ _7 f$ @' w- R- ?0 D& _
import swarm.Selector;7 J. i' [% }# `+ D. m) [
import swarm.activity.ActionGroup; % o- M" X7 G$ g6 Y. ]
class Agent {
( K. F2 o8 I. K$ u        char id;0 T* }9 V3 E* e0 o8 p3 {+ e7 Z
, D; u& w! w$ Q
        Agent(char id) {- q0 T/ l, }' T; H  V0 T' o
                this.id = id;8 \; @, p9 }+ O3 n
        }
9 S& O. s5 j/ D. h
! X! z5 }) ^: F! A        public void agentStep() {
6 k! M7 w& P0 D                System.out.println(id + ":" + Globals.env.getCurrentTime());
% {# r. p$ j, H  I+ F% a        }: o! I9 U& O1 N9 `# ~
}! s. |4 p) E/ @0 D$ M% v

& y- C- z+ M& ^) ~& Cpublic class ActionGroupDemo extends SwarmImpl {
, Z; L( G6 Z' V, f5 [        ScheduleImpl schedule;9 U' Z/ a  e/ |4 E/ G7 P; i
        ActionGroupImpl actionGroup;
& c2 g/ ^' {3 T% _4 a5 d! Z        ListImpl list;9 L# D6 k8 R0 S1 K
        char Id = 'a';. t$ y$ f6 A, S* R! ?7 X

/ Z+ W5 P8 V+ T* f8 q        ActionGroupDemo(Zone aZone) {
8 u/ f: V" J1 \0 V( ~5 c2 c7 q3 N                super(aZone);
/ F, f9 m- Z. Y: F0 `% e                list = new ListImpl(aZone);
& W' H- {. S# Y* ]                swarmSetp();3 i# h# g0 T3 O/ }5 Y, p$ w+ l7 u. K
                actionGroup = new ActionGroupImpl(aZone);4 K9 d, H/ i# G# p1 @
                schedule = new ScheduleImpl(aZone);
# u5 D  T  h. ~' `2 p8 b                try {
+ ^* u: }4 k1 y% \  H* V                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
) f9 w7 B5 @+ X9 j+ ]8 p                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
! U' v; X8 V4 C* @$ |                        
5 L* |& a% t4 x                        actionGroup.createActionForEach$message(list, agentSel);
8 F, X2 a# X8 _2 a$ }5 K" _. T( X                        actionGroup.createActionTo$message(this, swarmSel);6 B3 s3 P& ?2 d% W5 x* v, m
                        schedule.at$createAction(0, actionGroup);7 J; U% [( g, s: c, e$ [
                        schedule.at$createAction(1, actionGroup);
! R; l& `4 D0 ~9 P5 r8 u                        schedule.at$createAction(2, actionGroup);/ D& F: H" z; d6 L  X* l: P" ?

3 k7 D0 y9 S! r% \6 N  U# O                } catch (Exception e) {
$ R! J9 O4 \0 ?$ L- `' n                        e.printStackTrace(System.err);
/ v+ X/ ?. E0 j& c                        //System.out.println(e);
5 Z1 B, v. f1 a$ w8 y, O                        System.exit(1);- G; m2 u/ P3 R: b: d
                }
. j5 R/ X9 W1 I4 S" L$ F; M
, H/ Q* y+ i/ i$ E4 [  B* H7 _2 O7 ~3 w5 U5 i
        }
' x( h- r( a0 W. `9 n  [& p2 O
# O# Z* s8 x# {+ j        private void swarmSetp() {
" Z4 P8 Y! R$ m, C8 c) s1 y7 `6 V                list.addLast(new Agent(Id));) q5 @( d- F; d+ N9 ~
                Id++;
7 G' w+ r! }/ Q1 i2 C6 s        }
- k. s7 O5 {8 d; A& v' @  h, q' f- x. I* [5 L3 a$ e
        public Activity activateIn(Swarm context) {9 {+ \" }7 M( @) p
                super.activateIn(context);& H! g. e, C* w7 d, k+ n4 j
                schedule.activateIn(this);3 @& \/ {/ z" P" k
                return getActivity();2 N) T9 B  F, |7 D1 f
        }6 I3 g2 Z" w* V) R% f! G3 I
3 F  w5 h9 R/ J, ?
        public static void main(String[] args) {
* y/ D/ Y( f& F0 o                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
  _, i7 E, ^! s; \( }' I                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);% o: L7 ?. z* A+ j7 J
                swarms.buildObjects();0 S4 N( X) x! o& ^. c6 c
                swarms.buildActions();
+ ?& {& k. h4 a4 ?; J8 V                swarms.activateIn(null).run();. {) ?4 m8 @0 s% l7 ^( ?
        }$ ]6 ?1 y! u. P* x5 T6 K4 f
( e4 I$ }3 q- }! J8 ^
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-24 18:16 , Processed in 0.017558 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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